🔍 CVE-2024-6866

7.5
CVSS Score
HIGH
2025-03-20
2026-06-17 08:18
✅ 완료

🇰🇷 한글 설명

corydolphin/flask-cors 4.01 버전에서 요청 경로 매칭 시 대소문자를 구분하지 않는 취약점이 발견되었습니다. 이는 호스트 매칭용인 try_match 함수를 경로 매칭에 잘못 사용하여 발생하며, 대소문자를 구분해야 하는 URL 경로가 무시되어 권한이 없는 오리진이 제한된 경로에 접근할 수 있습니다.

💡 쉬운 설명

웹사이트의 주소는 대소문자를 구분해야 하는데, 이 프로그램이 이를 구분하지 못하는 문제가 있습니다. 이로 인해 원래는 접근하면 안 되는 비밀스러운 주소에 공격자가 대소문자만 살짝 바꿔서 몰래 들어올 수 있습니다.

🇺🇸 원문 (English)

corydolphin/flask-cors version 4.01 contains a vulnerability where the request path matching is case-insensitive due to the use of the `try_match` function, which is originally intended for matching hosts. This results in a mismatch because paths in URLs are case-sensitive, but the regex matching treats them as case-insensitive. This misconfiguration can lead to significant security vulnerabilities, allowing unauthorized origins to access paths meant to be restricted, resulting in data exposure and potential data leaks.

📍 영향받는 시스템

corydolphin/flask-cors version 4.01

⚔️ 공격 벡터

대소문자 구분이 없는 경로 매칭 특성을 이용해 허용되지 않은 오리진에서 제한된 경로로 요청을 보냄

🛡️ 대응 방법

flask-cors 라이브러리를 최신 보안 패치가 적용된 버전으로 업데이트하거나 경로 매칭 로직을 수정함

🔧 검증 코드

출력된 버전이 4.01인지 확인하여 취약한 버전 여부를 판단함

Shell / Script
pip show flask-cors | grep Version

📊 CVSS Vector String

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