🔍 CVE-2026-53537

3.7
CVSS Score
LOW
2026-06-22
2026-06-26 19:54
✅ 완료

🇰🇷 한글 설명

Python-Multipart 0.0.30 미만 버전에서 RFC 7578 표준을 위반하는 헤더 디코딩 방식의 취약점이 발견되었습니다. 공격자가 RFC 2231/5987 형식을 사용하여 필드 이름이나 파일명을 조작함으로써, WAF나 프록시와 같은 보안 장비를 우회하여 백엔드 서버로 데이터를 은닉하여 전달(Smuggling)할 수 있습니다.

💡 쉬운 설명

보안 검사 장비가 읽는 방식과 실제 서버가 읽는 방식의 차이를 이용해, 숨겨진 데이터를 몰래 전달하는 공격입니다. 특수한 형식의 파일 이름을 사용하여 보안 필터를 통과한 뒤 서버에 잘못된 정보를 전달할 수 있습니다.

🇺🇸 원문 (English)

Python-Multipart is a streaming multipart parser for Python. Prior to 0.0.30, parse_options_header parsed Content-Disposition (and Content-Type) headers with email.message.Message, which transparently applies RFC 2231/5987 decoding. The extended parameter syntax (filename*=charset'lang'value, name*=..., and the filename*0/filename*1 continuation form) is decoded and surfaced under the bare filename/name key, and overrides the plain parameter when both are present. RFC 7578 §4.2 explicitly forbids the filename* form in multipart/form-data. Components that follow RFC 7578, or that do not implement RFC 2231/5987 decoding for multipart/form-data (WAFs, proxies, gateways), may interpret such a header differently. An attacker can exploit that difference to smuggle a different field name or filename past an upstream inspector to the backend. This vulnerability is fixed in 0.0.30.

📍 영향받는 시스템

Python-Multipart 버전 0.0.30 미만

⚔️ 공격 벡터

RFC 7578에서 금지된 filename* 형식을 사용하여 보안 장비와 백엔드 간의 해석 차이를 유도하는 HTTP 요청 전송

🛡️ 대응 방법

Python-Multipart 라이브러리를 0.0.30 버전 이상으로 업데이트

🔧 검증 코드

출력된 버전이 0.0.30 미만이면 취약한 상태이며, 0.0.30 이상이면 안전합니다.

Shell / Script
pip show python-multipart | grep Version

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Python