🔍 CVE-2026-102265

5.3
CVSS Score
MEDIUM
2026-09-28
2026-10-07 20:57
✅ 완료

🇰🇷 한글 설명

PyJWT 2.13.0부터 2.14.0 버전 사이의 PyJWS._load 함수에서 RecursionError를 제대로 처리하지 못하는 취약점이 발견되었습니다. 공격자가 깊게 중첩된 토큰 헤더를 포함한 악성 토큰을 보내면 RecursionError가 발생하여 서버에 HTTP 500 오류를 유발할 수 있습니다.

💡 쉬운 설명

복잡하게 꼬인 가짜 인증 토큰을 보내면 서버가 이를 처리하다가 과부하로 인해 오류를 일으키는 문제입니다. 이로 인해 서비스가 일시적으로 중단될 수 있습니다.

🇺🇸 원문 (English)

PyJWT is a Python implementation of JSON Web Token standards. From 2.13.0 until 2.14.0, PyJWS._load in jwt/api_jws.py is affected because parser catches ValueError but not RecursionError. This occurs when a deeply nested token header reaches json.loads. As a result, RecursionError escapes the documented PyJWT error hierarchy. Consequently, an unauthenticated malformed token can cause a request-level failure and HTTP 500. This issue is fixed in version 2.14.0.

📍 영향받는 시스템

PyJWT 2.13.0 ~ 2.14.0

⚔️ 공격 벡터

인증되지 않은 사용자가 깊게 중첩된 구조의 악성 JSON Web Token(JWT) 헤더를 전송

🛡️ 대응 방법

PyJWT를 2.14.0 이상의 최신 버전으로 업데이트

🔧 검증 코드

출력된 버전이 2.13.0 미만이거나 2.14.0보다 큰지 확인하여 취약 여부를 판단합니다.

Shell / Script
pip show PyJWT | grep Version

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L

💻 영향받는 소프트웨어

Python