CVE
[CVE-2024-4367] pdf.js
FEARIS
2024. 5. 26. 14:09
개요
CVE-2024-4367 취약점은 널리 사용되고있는 PDF뷰어 중 하나인 pdf.js에서 발생하는 취약점이다.
해당 취약점은 PDF의 글꼴을 표현하고 관리하는 "FontMatrix" 속성의 유형 검사가 누락되어 임의의 자바스크립트 실행(XSS)이 가능하다.
등급
N/A
취약 버전
pdf.js 4.2.67 이전 버전
환경 구성
Tomcat 9.0.89
pdf.js 4.1.392
실습
POC코드를 이용해 공격에 사용할 PDF 생성
사전에 만들어둔 도커 컨테이너로 Tomcat 실행
PDF 업로드 후 [Upload File] 시도
PDF 파일 업로드에 성공하면 PDF 파일이 저장된 로컬 주소로 접근하고 최종적으로 XSS가 실행된다.
대응 방안
대응 방법 | 설명 |
버전 패치 | pdf.js 4.2.67 버전으로 패치 |
옵션 설정 | viewer.mjs 파일의 'isEvalSupported' 옵션을 False로 설정 |
의견
pdf.js의 웹에서 종종 사용하는 PDF뷰어로, 위와 같이 사용자로부터 PDF 파일을 업로드받아 뷰어로 보여주는 경우라면 다른 공격에 이용될 수 있습니다. 또한, 조건부 RCE의 경우 Node.js와 같이 child_process 모듈을 사용하여 프로세스를 제어할 수 있는 경우, RCE 공격이 가능합니다.