4. 안드로이드가 무엇일까?
2008년 출시된 리눅스 커널 기반의
모바일 플랫폼
현재 Android 4.3 버전인 젤리빈까지
업데이트
ARM, MIPS, x86 Architecture 까지
지원
Apache 2.0, GPL v2 License
전세계에서 약 9억대의 단말기에서
사용되고 있음
5. 왜 안드로이드 취약점이 위험한가
레퍼런스 폰을 제외한 다른 휴대폰은 단말기 제조사가 업데이트
된 버전을 제공해야 하기 때문에 빠른 업데이트가 어려움
업데이트 된 버전을 제공하더라도 본인이 업데이트를 하지 않는
경우가 많고, 업데이트 하는 법이 번거로워 업데이트를 잘 하지
않음.
공격자가 취약점을 악용해 공격할 경우 APK 파일을 “알 수 없는
소스 설치”를 활성화 해 놓으면 설치 가능
이 때문에 패치가 되더라도 공격 대상은 줄지 않는 것이 특징
T store, Olleh store,
OZ store 의 경우
알 수 없는 소스
체크를 해제해야
설치가 가능함
12. 공격을 하기 위한 조건
Package명과 Class명을 공격 대상 애플리케이션과 동일하게 해야 함
1. 기존의 dex File의 snail code를 수정하여 repackaging
2. AndroidManifest.xml 에 있는 package, class를 그대로 복원하여 소스를 reconstruct
14. 왜 이 취약점이 위험할까?
진짜 파일에 Classes.dex만 수정하는 것이라 일반인은 구분이 불가함
Classes.dex 만 생성해서 삽입하면 공격이 됨. ( 간.편 )
취약점이 발생하더라도 단말기 제조업체에서 업데이트를 하지 않으면 DANGER!
1-Day Exploit이 발생
15. 해결 방법
기기 업데이트 (단말기 제조업체에서 제공하는 경우)
Play store에서만 애플리케이션 다운로드 할 것. (Play store에서도 악성 앱의 발견수가 증가하고
있으므로 믿을 수 있는 애플리케이션만 설치할 것)
Bluebox Security 사에서 제공하는 스캐너를 이용하여 이 취약점을 이용한 악성코드를 탐지하고
취약 여부를 확인함