🔍 CVE-2019-25781

7.5
CVSS Score
HIGH
2026-10-29
2026-10-29 16:19
✅ 완료

🇰🇷 한글 설명

Python-Markdown 3.0부터 3.11.2까지의 버전에는 인라인 링크 파싱에서 알고리즘 복잡도 취약점이 존재합니다. 원격 공격자는 짝이 맞지 않는 대괄호를 반복하는 짧은 Markdown을 전송하여 CPU를 고갈시킬 수 있습니다. 이로 인해 워커 프로세스가 수 분간 과부하 상태에 빠질 수 있습니다.

💡 쉬운 설명

Markdown 문서를 처리하는 프로그램이 특정 형태의 짧은 입력을 받으면 과도하게 계산을 반복합니다. 공격자가 이런 입력을 보내면 서버의 CPU가 오랫동안 점유되어 서비스가 느려지거나 멈출 수 있습니다.

🇺🇸 원문 (English)

Python-Markdown 3.0 through 3.11.2 contains an algorithmic complexity vulnerability in inline link parsing that allows remote attackers to exhaust CPU through unmatched brackets. Attackers can submit short Markdown containing repeated [ or ![ characters, forcing LinkInlineProcessor.getText() and getLink() into quadratic scans that keep workers busy for minutes.

📍 영향받는 시스템

Python-Markdown 3.0 ~ 3.11.2를 사용하는 웹 애플리케이션 및 서비스

⚔️ 공격 벡터

원격 공격자가 짝이 맞지 않는 [ 또는 ![ 문자를 반복한 짧은 Markdown 텍스트를 전송하여 서버 CPU를 소진시킴

🛡️ 대응 방법

Python-Markdown을 3.11.3 이상 버전으로 업그레이드하고, 사용자 입력 처리 시 요청 시간 제한을 설정

🔧 검증 코드

출력된 Version 값이 3.0 이상 3.11.2 이하이면 취약하며, 3.11.3 이상이면 패치된 버전입니다.

Shell / Script
pip show markdown 2>/dev/null | grep -i '^version'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Python