CVE catalog

CVE-2026-101918

PyJWT is a Python implementation of JSON Web Token standards. From 2.0.0a1 until 2.15.0, PyJWT PyJWKClient.get_signing_key_from_jwt is affected because payload parser catches ValueError but not Recurs

[CVE catalog]

Severity
Medium · CVSS 5.3CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L
Published
Updated
Source
[NVD] · [CVE record]
EPSS
0.41% · Oct 25, 2026

PyJWT is a Python implementation of JSON Web Token standards. From 2.0.0a1 until 2.15.0, PyJWT PyJWKClient.get_signing_key_from_jwt is affected because payload parser catches ValueError but not RecursionError. This occurs when an attacker-controlled recursively nested payload reaches json.loads. As a result, documented PyJWT exception handling does not contain the failure. Consequently, an unauthenticated request can raise an exception that may produce an HTTP 500 response. The advisory-defined affected implementation also includes jwt/api_jwt.py, verify_signature=False. This issue is fixed in version 2.15.0.

Vulnerable and fixed packages

Distribution-reported package versions and fixes. These do not depend on matching against the OpenFactory package catalog.

DistributionPackageReleaseVersionStatus
Debianpyjwtsid2.15.1-1fixed
Debianpyjwtforky2.15.1-1fixed
Debianpyjwttrixie2.10.1-2+deb13u1vulnerable
Debianpyjwttrixie-security2.10.1-2+deb13u1vulnerable
Debianpyjwtbookworm2.6.0-1+deb12u1vulnerable
Debianpyjwtbookworm-security2.6.0-1+deb12u1vulnerable
PyPIpyjwtNot reported2.15.0fixed
PyPIpyjwtNot reported2.15.0fixed
CpepyjwtNot reported2.15.0fixed
Ubuntupyjwtpro1.7.0-2vulnerable
Ubuntupyjwtpro1.7.1-1vulnerable
Ubuntupyjwtpro1.7.1-2ubuntu1vulnerable
Ubuntupyjwtpro1.7.1-2ubuntu2vulnerable
Ubuntupyjwtpro1.7.1-2ubuntu2.1vulnerable
Ubuntupyjwtpro1.7.1-2ubuntu2.1+esm1vulnerable
Ubuntupyjwtpro1.7.1-2ubuntu2.1+esm2vulnerable
Ubuntupyjwtpro1.7.1-2ubuntu2.1+esm3vulnerable
Ubuntupyjwtpro1.7.1-2ubuntu2.1+esm4fixed
Ubuntupyjwt22.041.7.1-2ubuntu2vulnerable
Ubuntupyjwt22.042.1.0-1vulnerable
Ubuntupyjwt22.042.3.0-1vulnerable
Ubuntupyjwt22.042.3.0-1ubuntu0.1vulnerable
Ubuntupyjwt22.042.3.0-1ubuntu0.2vulnerable
Ubuntupyjwt22.042.3.0-1ubuntu0.3vulnerable
Ubuntupyjwt22.042.3.0-1ubuntu0.4vulnerable
Ubuntupyjwt22.042.3.0-1ubuntu0.5vulnerable
Ubuntupyjwt22.042.3.0-1ubuntu0.6fixed
Ubuntupyjwt24.042.7.0-1vulnerable
Ubuntupyjwt24.042.7.0-1ubuntu0.1vulnerable
Ubuntupyjwt24.042.7.0-1ubuntu0.2vulnerable
Ubuntupyjwt24.042.7.0-1ubuntu0.3vulnerable
Ubuntupyjwt24.042.7.0-1ubuntu0.4fixed
Ubuntupyjwt26.102.10.1-4ubuntu1vulnerable
Ubuntupyjwt26.102.12.1-1vulnerable
Ubuntupyjwt26.102.13.0-1vulnerable
Ubuntupyjwt26.102.13.0-1ubuntu1vulnerable
Ubuntupyjwt26.102.13.0-1ubuntu1.1fixed
Ubuntupyjwt26.042.10.1-2vulnerable
Ubuntupyjwt26.042.10.1-3vulnerable
Ubuntupyjwt26.042.10.1-3build1vulnerable
Ubuntupyjwt26.042.10.1-4vulnerable
Ubuntupyjwt26.042.10.1-4ubuntu1vulnerable
Ubuntupyjwt26.042.10.1-4ubuntu1.1vulnerable
Ubuntupyjwt26.042.10.1-4ubuntu1.2vulnerable
Ubuntupyjwt26.042.10.1-4ubuntu1.3fixed

Fixed-version evidence

DistributionPackageTypeReleaseFixed versionUrgencyOriginBugs
Debianpyjwtsourcesid2.15.0-1not yet assignedNot reportedNot reported
Debianpyjwtsourceforky2.15.0-1not yet assignedNot reportedNot reported
Debianpyjwtsourcetrixie(unfixed)not yet assignedNot reportedNot reported
Debianpyjwtsourcebookworm(unfixed)not yet assignedNot reportedNot reported
PyPIpyjwtPyPINot reported2.15.0Not reportedGHSA-42VR-XJ54-VC7VNot reported
PyPIpyjwtPyPINot reported2.15.0Not reportedPYSEC-2026-4141Not reported
CpepyjwtcpeNot reported2.15.0Not reportedNVD-CVE-2026-101918Not reported
Ubuntupyjwtdebpro1.7.1-2ubuntu2.1+esm4Not reportedUBUNTU-CVE-2026-101918Not reported
Ubuntupyjwtdeb22.042.3.0-1ubuntu0.6Not reportedUBUNTU-CVE-2026-101918Not reported
Ubuntupyjwtdeb24.042.7.0-1ubuntu0.4Not reportedUBUNTU-CVE-2026-101918Not reported
Ubuntupyjwtdeb26.102.13.0-1ubuntu1.1Not reportedUBUNTU-CVE-2026-101918Not reported
Ubuntupyjwtdeb26.042.10.1-4ubuntu1.3Not reportedUBUNTU-CVE-2026-101918Not reported

Notes

[bookworm] pyjwt: Minor issue

OpenFactory catalog packages

[Debian 12 (Bookworm)]

  • [python3-jwt]Affected

    Source package: [pyjwt]

    Details (4)
    • 2.6.0-1+deb12u1 · all · bookworm

      Affected

      nvd · pyjwt · debian · bookworm; nvd · pyjwt · debian · 12

    • 2.6.0-1+deb12u1 · all · bookworm

      Affected

      nvd · pyjwt · debian · bookworm; nvd · pyjwt · debian · 12

    • 2.6.0-1+deb12u1 · all · bookworm-security

      Affected

      nvd · pyjwt · debian · bookworm; nvd · pyjwt · debian · 12

    • 2.6.0-1+deb12u1 · all · bookworm-security

      Affected

      nvd · pyjwt · debian · bookworm; nvd · pyjwt · debian · 12

[Debian 13 (Trixie)]

  • [python3-jwt]Affected

    Source package: [pyjwt]

    Details (4)
    • 2.10.1-2+deb13u1 · all · trixie

      Affected

      nvd · pyjwt · debian · 13

    • 2.10.1-2+deb13u1 · all · trixie

      Affected

      nvd · pyjwt · debian · 13

    • 2.10.1-2+deb13u1 · all · trixie-security

      Affected

      nvd · pyjwt · debian · 13

    • 2.10.1-2+deb13u1 · all · trixie-security

      Affected

      nvd · pyjwt · debian · 13

  • [python-jwt-doc]Affected

    Source package: [pyjwt]

    Details (4)
    • 2.10.1-2+deb13u1 · all · trixie

      Affected

      nvd · pyjwt · debian · 13

    • 2.10.1-2+deb13u1 · all · trixie

      Affected

      nvd · pyjwt · debian · 13

    • 2.10.1-2+deb13u1 · all · trixie-security

      Affected

      nvd · pyjwt · debian · 13

    • 2.10.1-2+deb13u1 · all · trixie-security

      Affected

      nvd · pyjwt · debian · 13

Observed:

References