🇰🇷 한글 설명
보안 부팅 과정 중 bl2 단계에서 이미지 길이를 읽어올 때 32비트 부호 없는 정수 오버플로가 발생할 수 있습니다. 공격자는 이를 이용해 메모리 범위 제한을 우회하고 버퍼 범위를 벗어난 데이터를 작성하여 보안 부팅을 무력화할 수 있습니다.
💡 쉬운 설명
컴퓨터가 켜질 때 보안을 확인하는 과정에서 숫자를 계산하는 오류가 발생합니다. 이 오류를 이용하면 해커가 보안 검사를 건너뛰고 시스템에 악성 데이터를 몰래 넣을 수 있습니다.
🇺🇸 원문 (English)
During the secure boot, bl2 (the second stage of
the bootloader) loops over images defined in the table “bl2_mem_params_descs”.
For each image, the bl2 reads the image length and destination from the image’s
certificate. Because of the way of reading from the image, which base on 32-bit unsigned integer value, it can result to an integer overflow. An attacker can bypass memory range restriction and write data out of buffer bounds, which could result in bypass of secure boot.
Affected git version from c2f286820471ed276c57e603762bd831873e5a17 until (not
📍 영향받는 시스템
git commit c2f286820471ed276c57e603762bd831873e5a17 이후 특정 버전의 bl2 구성 요소
⚔️ 공격 벡터
이미지 인증서에 조작된 길이를 포함시켜 정수 오버플로를 유도한 뒤 메모리 경계를 침범하는 방식
🛡️ 대응 방법
해당 취약점이 수정된 최신 버전의 부트로더(bl2) 및 펌웨어로 업데이트
🔧 검증 코드
명령어 결과로 해당 커밋 해시가 출력되면 취약한 버전이 포함되어 있을 가능성이 높습니다.
git log -1 --format=%H | grep -E 'c2f286820471ed276c57e603762bd831873e5a17'