🇰🇷 한글 설명
Mistune 3.2.1 이상 3.3.0 미만 버전에는 figure 디렉티브의 figwidth 옵션이 검증되지 않아 CSS 인젝션 취약점이 존재합니다. 공격자는 이를 통해 렌더링된 figure 스타일 속성에 임의의 스타일 선언을 추가할 수 있습니다.
💡 쉬운 설명
마크다운 문서를 변환하는 라이브러리에 악성 스타일을 삽입할 수 있는 결함입니다. 이로 인해 피해자의 브라우저가 공격자 서버로 요청을 보내 일부 정보가 유출될 수 있습니다.
🇺🇸 원문 (English)
Mistune from 3.2.1 before 3.3.0 contains a CSS injection vulnerability that allows attackers controlling markdown input to inject arbitrary style declarations via the unvalidated figwidth option of the figure directive. Attackers can append declarations like background:url() to the rendered figure style attribute, forcing victim browsers to send requests to attacker servers and leak attribute values.
📍 영향받는 시스템
Mistune 3.2.1 이상 3.3.0 미만 버전을 사용하는 Python 애플리케이션
⚔️ 공격 벡터
공격자가 조작한 마크다운 입력의 figure 디렉티브 figwidth 옵션에 background:url() 등의 선언을 주입하여 피해자 브라우저가 외부 서버로 요청하도록 유도
🛡️ 대응 방법
Mistune을 3.3.0 이상으로 업데이트
🔧 검증 코드
출력된 버전이 3.2.1 이상 3.3.0 미만이면 취약하며, 3.3.0 이상이면 패치가 적용된 것입니다.
pip show mistune 2>/dev/null | grep -i version