🇰🇷 한글 설명
Linux 커널의 rk3288 암호화 드라이버에서 해시 엔진의 유휴 상태(idle) 확인 과정 중 오류가 발생할 수 있는 취약점입니다. 해시 엔진이 유휴 상태로 전환되지 않더라도 드라이버가 이를 무시하고 이전의 성공 값을 사용하여 요청을 완료함으로써 잘못된 결과를 반환할 수 있습니다.
💡 쉬운 설명
암호화 작업을 수행할 때 기계가 제대로 작동을 멈췄는지 확인해야 하는데, 이 과정을 건너뛰고 이전 작업 결과를 그대로 사용하는 문제입니다. 이로 인해 암호화 계산 결과가 실제와 다르게 잘못 나올 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
crypto: rk3288 - fail ahash requests on HASH idle timeout
rk_hash_run() waits for RK_CRYPTO_HASH_STS to become idle after the
final DMA transfer, but ignores the poll result. If the hash engine
never becomes idle, the driver still reads the digest registers and
finalizes the request with the previous success value.
Store the poll result and finalize the request with the timeout error
before reading the digest registers.
📍 영향받는 시스템
RK3288 프로세서를 사용하는 Linux 커널 기반 시스템
⚔️ 공격 벡터
로컬 공격자가 암호화 엔진의 상태를 조작하거나 타임아웃을 유도하여 잘못된 해시 값을 얻을 수 있음
🛡️ 대응 방법
해당 취약점이 수정된 최신 Linux 커널 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 취약점이 패치된 최신 릴리스 버전인지 확인