악성코드 분석(툴 사용을 중심으로)

2014. 9. 1. 23:57Security ★ Development/안드로이드 모바일 보안

반응형

미약하나마 모바일 apk를 분석하는데 잘 쓰이는 도구들을 사용해보는 것을 목적으로 포스트합니다.


1. 바이러스 토탈

우선 바이러스 토탈 사이트에가서 업로더를 설치합니다.


설치 후 분석하고 싶은 apk 파일을 우클릭 후 보내기 -> VirusTotal을 클릭하면 자동으로 브라우저와 연결되며 분석 결과를 보여줍니다.


저는 개인적으로 만들어본 앱을 올려봤습니다.  결과, 악성코드로 의심되는 부분은 없는것으로 나타났습니다.


2. 바이러스 토탈 모바일 버전

모바일에서 바로 어플들에 사용해 볼 수 있는 버전입니다.  virustotla이라고 검색하여 설치해줍니다.


설치하고 실행하면 자동으로 폰에 있는 어플들을 분석하기 시작합니다.  


분석이 끝나면 유저어플과 시스템어플로 나뉘게 되는데 제가 설치한 어플 중에는 플래시라이트가 악성코드로 의심된다고 나타나고 있습니다.  


클릭해보면 55개의 벤더중 하나의 벤더가 이 어플을 탐지했다고 나옵니다.


왼쪽이 벤더명이고 오른쪽이 그 벤더가 분류해 놓은 의심 부류입니다.


시스템 어플을 보면 폰을 구입시 기본 어플로 깔려있는 Google Ply 뮤직이 의심 어플로 나타나고 있습니다.


위에서 플래시라이트를 검출한 벤더와 VIPRE라는 벤더 2개가 악성코드로 의심하고 있는데 VIPRE가 검출한 내용은 airpush에 대한 내용으로 알림바에 광고(ads)를 놓는 코드를 악성코드로 의심하고 있습니다.


시스템 어플이 악성코드로 의심받는 부분처럼 악성코드로 의심받는다고 해서 의심되는 어플을 모두 지울 수는 없지만 대부분의 벤더들이 악성코드로 의심할 때에는 삭제를 하는 것이 안전합니다.


3.  안드로토탈

http://andrototal.org로 접속해 우측의 보안코드와 sample file(apk)을 올립니다.  올리고 Start scan을 누르면 분석이 시작됩니다.


분석이 끝나면 각 안티바이러스 서비스(벤더)별로 분석한 결과를 확인할 수 있습니다.


벤더를 하나 클릭해보면 아래와 같이 해당 서비스를 통해 분석한 샘플의 md5 해쉬값과 그 파일의 악성코드 의심여부를 확인할 수 있습니다.  아래 그래프는 악성코드별 통계로 해당 솔루션으로 검출된 악성코드의 비율을 나타내고 있습니다.


메뉴 중에 foresafe라는 다른 외부 서비스와 연결하는 부분이 있습니다.  클릭해보면 아래와 같은 화면이 나타납니다.


그 중 하나를 클릭해보면 분석 보고 창이 뜨는데 제가 선택한 어플 문자 메시지를 가로채는 악성 apk를 사용자가 다운로드하도록 유도하는 Trojan 바이러스로 나타나고 있습니다.


그 외에도 각 어플이 허용하는 api권한을 보여주므로 해당 어플이 어떤 기능을 할 수 있는지를 확인함으로써 과도한 권한 혹은 필요없는 권한이 있을 경우 악성코드로 의심해 볼 수 있습니다.  문자 메시지를 쓰는 기능과 보내는 기능을 모두 가지고 있는데 이는 사용자의 별도 조작없이 어플 스스로 문자를 보낼 수 있다는 것을 의미합니다.  이런 경우 사용자 몰래 부적절한 작업을 할 위험이 있습니다.