보안 취약점 · 2 min read · Oct 23, 2025
안드로이드 4.3 젤리빈 및 이전 버전의 심각한 코드 실행 취약점

대부분의 경우, 구글 모토로라, 삼성, HTC 또는 LG와 같은 대기업의 최상위 플래그십 안드로이드 스마트폰이나 태블릿을 사용하지 않는다면, 안드로이드 4.3 젤리빈 버전이 탑재된 스마트폰을 사용하고 있을 것입니다. 그리고 안드로이드 4.3 젤리빈 또는 이전 버전의 스마트폰이나 태블릿을 사용하고 있다면, 귀하 또는 귀하의 스마트폰/태블릿은 심각한 코드 실행 취약점에 노출되어 있습니다. 이 취약점은 IBM의 애플리케이션 보안 팀에 의해 9개월 전에 발견되었습니다. 이 취약점은 구글의 최신 안드로이드 버전인 4.4 킷캣에서 패치되었지만, 안드로이드 4.3 및 이전 버전은 여전히 매우 취약합니다.

최신 데이터에 따르면, 전체 안드로이드 사용자 중 13.6%만이 스마트폰이나 태블릿에 킷캣을 사용하고 있습니다. 이는 약 86.4%의 안드로이드 스마트폰과 태블릿이 이 높은 위험의 취약점에 노출되어 있음을 의미합니다.
- IBM 보안 연구원들은 스택 버퍼 오버플로우 취약점이 안드로이드의 KeyStore 저장 서비스에 존재한다고 밝혔습니다. 이 서비스는 장치의 암호화 키를 저장하고 보호하는 역할을 합니다.
“스택 버퍼는 ‘KeyStore::getKeyForName’ 메서드에 의해 생성됩니다.” “이 함수는 Binder 인터페이스를 사용하여 외부 애플리케이션에서 접근할 수 있는 여러 호출자를 가지고 있습니다 (예: ‘android::KeyStoreProxy::get’). 따라서 ‘keyName’ 변수는 악의적인 애플리케이션에 의해 임의의 크기로 제어될 수 있습니다.”라고 Hay가 말했습니다. “‘encode_key_for_uid’에 의해 호출되는 ‘encode_key’ 루틴은 경계 검사가 없기 때문에 ‘filename’ 버퍼를 오버플로우할 수 있습니다.” 전문가들이 설명했습니다.
안드로이드 API 프로그래밍에 대한 지식을 가진 누구나 이 취약점을 성공적으로 악용할 수 있습니다. 일단 악용되면 해커는 키 저장소 프로세스 하에서 악의적인 코드를 실행할 수 있습니다. 실행된 코드는 장치의 잠금 자격 증명이 심각하게 유출될 수 있습니다. 마스터 키는 잠금 자격 증명에 의해 파생되므로, 장치가 잠금 해제될 때마다 ‘Android::KeyStoreProxy::password’가 자격 증명과 함께 호출됩니다.

이 취약점은 메모리에서 복호화된 마스터 키, 데이터 및 하드웨어 기반 키 식별자를 유출할 수 있으며, 오프라인 공격을 위해 디스크에서 암호화된 마스터 키, 데이터 및 하드웨어 기반 키 식별자를 유출할 수 있습니다. 해커는 또한 하드웨어 기반 저장소와 원격으로 상호작용하고 사용자 대신 암호화 작업(예: 임의 데이터 서명)을 수행할 수 있습니다.
이론적으로 잠재적인 해커는 안드로이드 4.4 킷캣 이전의 모든 안드로이드 장치에 존재하는 위의 취약점을 악용할 수 있지만, 전문가들은 운영 체제의 메모리 기반 보호를 우회해야 하는 등 여러 가지 어려움으로 인해 악용이 상당히 어렵다고 믿고 있습니다. 데이터 실행 방지(DEP) 및 주소 공간 배치 무작위화(ASLR)와 같은 보호가 있습니다. 데이터 실행 방지는 악의적인 코드 실행을 방지하기 위해 사용되는 악용 완화 방법이지만, 공격자들은 리턴 지향 프로그래밍(ROP) 공격을 사용하여 이를 우회하는 데 성공했습니다. ASLR은 시스템 파일 및 기타 프로그램에서 사용하는 메모리 위치를 무작위화하여 버퍼 오버플로우 공격을 완화하는 데 사용되며, 이 기술을 구현하면 특정 프로세스의 위치를 추측하기가 어렵습니다.
“그러나 안드로이드 키 저장소는 종료될 때마다 다시 생성됩니다. 이 동작은 확률적 접근 방식을 가능하게 하며, 공격자는 이론적으로 ASLR을 악용하여 인코딩을 무력화할 수 있습니다.”라고 게시물은 언급했습니다.
전문가들은 이 결함이 실제로 악용되는 것을 아직 보지 못했다고 확인했습니다.
새 게시물을 받은 편지함에서 받기
스팸은 없습니다. 언제든지 구독 해지 가능합니다.