🇰🇷 한글 설명
PyJWT 2.4.0부터 2.14.0 버전 사이에서 HMACAlgorithm.prepare_key 함수가 비대칭 키 검증 시 DER 인코딩의 텍스트 마커 부재로 인해 취약점이 발생합니다. 애플리케이션이 HMAC과 비대칭 알고리즘을 혼용하고 DER 공개 키를 공유 검증 키로 제공할 경우, PyJWT가 공개 DER 바이트를 HMAC 비밀 키로 오용하게 됩니다. 이로 인해 공개 키를 아는 공격자가 인증된 HMAC 토큰을 위조할 수 있습니다.
💡 쉬운 설명
암호화 키를 처리하는 과정에서 실수로 공개된 정보를 비밀번호처럼 사용하게 되는 보안 결함입니다. 이로 인해 해커가 가짜 인증서를 만들어 시스템에 몰래 접속할 수 있습니다.
🇺🇸 원문 (English)
PyJWT is a Python implementation of JSON Web Token standards. From 2.4.0 until 2.14.0, PyJWT HMACAlgorithm.prepare_key is affected because asymmetric-key guard relies on textual markers that are absent from DER encoding. This occurs when an application mixes HMAC and asymmetric algorithms and supplies a DER public key as the shared verification key. As a result, PyJWT uses public DER bytes as an HMAC secret. Consequently, an attacker who knows the public key can forge authenticated HMAC tokens. This issue is fixed in version 2.14.0.
📍 영향받는 시스템
PyJWT versions 2.4.0 to 2.14.0
⚔️ 공격 벡터
공개된 DER 형식의 공개 키를 사용하여 HMAC 토큰을 위조하는 방식
🛡️ 대응 방법
PyJWT를 2.14.0 이상의 최신 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 버전이 2.4.0 미만이고 2.14.0을 초과하지 않는지 확인하십시오.
pip show PyJWT | grep Version