Skip to content

Fix dependabot findings in qr_code_server and filesystem-server - #49

Merged
jonpspri merged 1 commit into
mainfrom
dbot-2026-10-01
Oct 1, 2026
Merged

jonpspri merged 1 commit into
mainfrom
dbot-2026-10-01

Conversation

@jonpspri

@jonpspri jonpspri commented Oct 1, 2026 •

Copy link
Copy Markdown
Collaborator

Summary

Addresses 20 of 24 open Dependabot alerts (the 2 nltk/diskcache alerts on
mcp_eval_server have no patched upstream release and are intentionally
left; see below).

qr_code_server (Python) — 17 alerts

  • pyjwt 2.13.0 → 2.15.1 — clears 13 advisories incl. critical
    CVE-2026-102268 (asymmetric-PEM confusion bypass)
  • cryptography 48.0.1 → 50.0.2 — clears 3 advisories incl. CVE-2026-69247
    (PKCS#7 Bleichenbacher oracle)
  • anyio 4.13.0 → 4.15.1 — clears 2 advisories incl. critical CVE-2026-63374
    (TLS certificate spoofing via IDNA 2003 hostnames)

Changes to pyproject.toml:

  • Pins applied via [tool.uv] constraint-dependencies floors
    (pyjwt>=2.15.0, cryptography>=50.0.0, anyio>=4.14.2); top-level
    dependencies untouched
  • cryptography moved from dependencies to constraint-dependencies — the
    source has no direct imports of it
  • Removed the stale exclude-newer-package cutoff for cryptography
    (2026-06-10, an authoring-time freeze) which blocked the security fixes

uv.lock regenerated (uv lock --refresh).

filesystem-server (Rust) — 3 alerts

  • rmcp 1.8.0 → 2.2.0 (floor 2.1.0) — clears CVE-2026-63127,
    CVE-2026-63128, CVE-2026-64684
  • Only API break: model::Content renamed to ContentBlock; updated the
    import and 10 call sites in server.rs, no behavior change
  • Stayed on the 2.x line because rmcp 3.x requires Rust 1.88, above this
    crate's rust-version = "1.85" guarantee

Not addressed (no fix available upstream)

  • nltk ≤3.10.3 (CVE-2026-81726) and diskcache ≤5.6.3 (CVE-2025-69872) in
    mcp_eval_server: both are already at their latest releases, so no version
    bump can clear them. Deferred; alerts can be dismissed as
    "no fix available" or revisited if the dependencies are replaced.

Verification

  • qr_code_server: uv lock --check consistent; 97/97 pytest pass
  • filesystem-server: cargo fmt clean, cargo build clean, 96/96 tests pass
    (clippy: 2 pre-existing warnings in untouched write.rs)

Signed-off-by: Jonathan Springer jps@s390x.com

Pin transitive floors in qr_code_server via tool.uv constraint-dependencies:
pyjwt>=2.15.0, cryptography>=50.0.0, anyio>=4.14.2. Drop the stale
cryptography exclude-newer cutoff that blocked the security fixes.

Bump filesystem-server rmcp 1.8.0 -> 2.2.0 (Content renamed to
ContentBlock in rmcp 2.x) to clear three rmcp advisories.

Signed-off-by: Jonathan Springer <jps@s390x.com>
@jonpspri
jonpspri merged commit 3854f36 into main Oct 1, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant