Security: python-jose dependency has known CVEs — replace with PyJWT
Summary
pyproject.toml lists python-jose[cryptography]>=3.3.0 as a dependency. The python-jose library has multiple known vulnerabilities including:
- CVE-2024-33663: Algorithm confusion attack allowing JWT signature bypass
- CVE-2024-33664: Unsafe handling of RSA keys
- The library is largely unmaintained (last release 2023, open issues unaddressed)
Evidence
# pyproject.toml line 17
"python-jose[cryptography]>=3.3.0",
Why This Is Risky for ExtensionShield
ExtensionShield uses JWTs for cloud authentication (when EXTSHIELD_MODE=cloud). An algorithm confusion vulnerability in the JWT library means an attacker could:
- Forge a JWT token without knowing the signing secret
- Impersonate any user, including admins
- Bypass the cloud authentication entirely
Proposed Fix
Replace python-jose with PyJWT, the actively maintained alternative:
# pyproject.toml — replace:
# "python-jose[cryptography]>=3.3.0",
# with:
"PyJWT[crypto]>=2.8.0",
Update any imports in the codebase:
# Before
from jose import jwt, JWTError
# After
import jwt
from jwt.exceptions import InvalidTokenError
References
Impact
Critical — JWT forgery could allow complete authentication bypass in cloud mode.
Security: python-jose dependency has known CVEs — replace with PyJWT
Summary
pyproject.tomllistspython-jose[cryptography]>=3.3.0as a dependency. Thepython-joselibrary has multiple known vulnerabilities including:Evidence
Why This Is Risky for ExtensionShield
ExtensionShield uses JWTs for cloud authentication (when
EXTSHIELD_MODE=cloud). An algorithm confusion vulnerability in the JWT library means an attacker could:Proposed Fix
Replace
python-josewithPyJWT, the actively maintained alternative:Update any imports in the codebase:
References
Impact
Critical — JWT forgery could allow complete authentication bypass in cloud mode.