🔍 CVE-2026-71394

0.0
CVSS Score
UNKNOWN
2026-08-10
2026-10-24 15:10
✅ 완료

🇰🇷 한글 설명

Android용 GNU Emacs의 src/sfnt.c에 있는 sfnt_read_table_directory() 함수가 테이블 헤더 입력을 올바르게 검증하지 않습니다. 읽기 길이 검사에서 잘못된 비교 변수를 사용하기 때문에, 실제보다 많은 테이블 디렉터리 항목을 가진 것처럼 조작된 폰트 파일을 처리하면 힙의 초기화되지 않은 메모리가 테이블 디렉터리 항목에 포함된 구조체로 반환됩니다. 이 문제는 커밋 7621ee1d01229d50e5c0cddea6bf0b01095a62cf 이후 수정되었습니다.

💡 쉬운 설명

Emacs가 악성 폰트 파일을 읽을 때 메모리의 쓰레기 값을 사용하게 되어 정보가 새거나 프로그램이 비정상 종료될 수 있습니다. 32비트 환경에서는 임의의 메모리 접근으로 이어질 수도 있습니다.

🇺🇸 원문 (English)

GNU Emacs for Android improperly validates the table header input in sfnt_read_table_directory() in src/sfnt.c. Due to an incorrect comparison variable in the read-length check, a crafted font file that claims to contain more table directory entries than actually present causes the parser to return a struct with uninitialized heap memory in the table directory entries. An attacker can deliver a malicious font file via email, EWW (Emacs Web Wowser), or documents with custom faces, causing Emacs to load it. This leads to the use of uninitialized heap data in subsequent table lookups, potentially resulting in information disclosure, crashes, or arbitrary memory access on 32-bit targets. This issue is fixed after commit 7621ee1d01229d50e5c0cddea6bf0b01095a62cf

📍 영향받는 시스템

수정 커밋 이전의 Android용 GNU Emacs 빌드

⚔️ 공격 벡터

이메일, EWW 웹 브라우저, 커스텀 폰트가 포함된 문서를 통해 악성 폰트 파일을 전달하여 Emacs가 로드하도록 유도

🛡️ 대응 방법

커밋 7621ee1d01229d50e5c0cddea6bf0b01095a62cf 이후 버전의 Emacs for Android로 업데이트

🔧 검증 코드

출력된 버전이 수정 커밋이 반영된 이후 버전인지 릴리스 노트 또는 소스 저장소의 커밋 이력과 대조하여 확인하며, 수정 이전 버전이면 취약한 것으로 판단합니다.

Shell / Script
emacs --version 2>/dev/null | head -n 1

💻 영향받는 소프트웨어

Microsoft Edge for Android