
CVE-2026-91737에 대한 개념 증명(PoC)으로, Chrome의 PDF 렌더러에서 발생하는 PDFium use-after-free 취약점을 이용해 샌드박스 내부에서 ASLR 우회 및 ARM64 페이로드 실행이 가능합니다.
재진입 PDF JavaScript 액션이 Chromium의 PopulateAnnotationLinks()가 원시 페이지 핸들을 보유하고 있는 동안 CPDF_Page를 언로드합니다. 이 PoC는 해당 할당을 재점유하고, ASLR을 복구하며, 샌드박스 처리된 PDF 렌더러에서 공격자가 제공한 40바이트 ARM64 페이로드를 실행합니다. 페이로드는 센티널을 기록한 뒤 PDF 스크립팅으로 반환합니다.
Chromium 이슈 558036280 · 공개 익스플로잇 업데이트 및 첨부 파일
수정되지 않은 Chrome Beta 154.0.8037.0, macOS 26.2 arm64에서 테스트되었습니다. Chrome Framework의 SHA-256은 280c15c95811fcf799c91e7c307fc941cc61be1f156247d86d9856ead0e06062였습니다. 이 이슈는 수정되었으며, 이 PoC는 테스트된 빌드의 오프셋을 사용합니다. PDF 접근성이 필요합니다. 아래 플래그는 해당 진입을 결정적으로 만들고 렌더러 샌드박스를 활성화된 상태로 유지합니다.
python3 oracle_server.py --port 8000 --root serve --events ./rce-events.jsonl
다른 터미널에서:
"/Applications/Google Chrome Beta.app/Contents/MacOS/Google Chrome Beta" \
--user-data-dir="$(mktemp -d /tmp/plc01-rce.XXXXXX)" \
--no-first-run --no-default-browser-check \
--disable-background-networking --disable-component-update --disable-sync \
--force-renderer-accessibility --enable-logging=stderr --v=1 \
http://127.0.0.1:8000/quick/poc.html
성공하면 SELFCONTAINED_MAPJIT_NATIVE_PAYLOAD_SENTINEL_COMPLETE로 끝납니다. 검증된 실행에는 약 21분이 걸렸습니다. 실패한 ASLR 프로브는 의도적으로 PDF 렌더러 인스턴스를 크래시시킵니다.
범위: 샌드박스 처리된 PDF 렌더러 내의 네이티브 코드 실행. 브라우저 프로세스 침해나 샌드박스 탈출은 주장하지 않습니다.