
CVE-2024-4367을 위한 실습형 랩으로, Firefox에서 PDF.js 글꼴 렌더링 취약점 악용을 시연합니다. PoC 생성기, 취약한 버전과 패치된 소스 코드 비교를 포함합니다.
[!IMPORTANT] 본 리포지토리는 취약점을 학습하기 위한 것입니다.
본 핸즈온은 반드시 자신이 관리하는 적절한 컴퓨터에서 진행해 주십시오. 불법 행위는 절대 하지 마십시오.
또한 본 리포지토리로 인해 발생한 일체의 손해·책임을 작성자는 지지 않습니다.
CVE-2024-4367을 체험하는 핸즈온
python CVE-2024-4367-PoC/CVE-2024-4367.py "alert('document.domain')"
출처: https://github.com/LOURC0D3/CVE-2024-4367-PoC
공격용 poc.pdf가 생성됩니다.
자세한 사용법은 아래를 참고해 주세요.
https://github.com/LOURC0D3/CVE-2024-4367-PoC
python firefox.py 125
공격 가능한 버전의 Firefox Nightly를 사용하여 poc.pdf를 엽니다.
최초 실행 시에는 Firefox Nightly를 다운로드하므로 시간이 걸립니다.
JavaScript가 실행되어 알림(alert)이 표시되는 것을 확인합니다.
python firefox.py 135
새로운 버전의 Firefox Nightly로 poc.pdf를 열어 알림(alert)이 표시되지 않고, 취약점이 수정되었는지 확인합니다.
취약점이 포함된 vulnerable-pdf.js와 취약점이 수정된 invulnerable-pdf.js가 있습니다.
pdfjs_diff_font_renderer.js는 vulnerable-pdf.js/src/core/font_renderer.js와 invulnerable-pdf.js/src/core/font_renderer.js의 diff 차이입니다.