본문으로 바로가기

Mobile Security Framework

category Defensive Security/Linux 2016.03.02 17:50

1. 개요

자동화 분석의 선두두자 쿠쿠 샌드박스가 있지만, 다른 도구들도 존재한다. 모바일 자동화 분석에서는 쿠쿠 샌드박스를 안드로이드 분석 모델로 변경할 수 있지만, 모바일 보안 프레임워크(Mobile Security Framework, 이하 MobSF)라는 도구도 존재한다. 이 도구는 아직 정식 릴리즈가 된적이 없기에 이 문서의 작성 기준 0.88 버전을 제공한다.

2. 기본 설치

MobSF는 기본적으로 32비트 운영체제에서 구현이 가능하다. 안드로이드 분석을 위해사용하는 ADBAATP같은 도구들이 32비트로 제공되고 있기 때문이다. 이 문서를 작성하기 위해 사용한 운영체제는 우분투 14.04 LTS 데스크톱 i386으로 구현했다.

운영체제 설치가 끝났다면 패키지 업데이트한다.

sudo apt-get update

MobSF를 운영하기 위해서 다음과 같은 패키지들을 설치한다.

sudo apt-get install vim git virtualbox python-dev python-pip libffi-dev libssl-dev openjdk-7-jre

MobSF를 깃허브를 이용하여 다운로드 받고 생성된 디렉터리에 접근한다.

git clone https://github.com/ajinabraham/Mobile-Security-Framework-MobSF
cd Mobile-Security-Framework-MobSF/

파이썬 라이브러리를 설치한다.

sudo pip install -r requirements.txt

추가로 파이썬 라이브러리를 설치한다.

sudo pip install cryptography

MobSF는 안드로이드 에뮬레이터를 구축한 버추얼박스 이미지를 배포한다. 이 배포파일을 다운로드하여 샌드박스로 사용한다. 가상머신 다운로드 주소는 https://goo.gl/PmLt78 이며, 용량은 약 1.1GB이다.

안드로이드 가상머신을 다운로드 다 받았다면 버추얼박스에서 이미지를 가져온다.

그림 1. 이미지 가져오기

이미지를 가져올 때 맥(MAC) 주소를 초기화한다.

그림 2. 맥 주소 초기화

버추얼박스 설정에 들어가서 네트워크에서 Host-only Networks 카테고리에 가상 인터페이스를 설정한다.

그림 3. Host-only Networks에 가상 인터페이스 설정

설정이 완료되었다면 가상머신을 실행시킨다. 먼저 경고창이 뜨는데 스위치 버튼을 누르고 진행한다.

그림 4. 가상머신 윈도우 실행 모드 설정

실행하는 과정에서 다음 그림과 같이 아이피를 확인할 수 있다.

그림 5. 가상머신 아이피 확인

가상 네트워크 인터페이스 아이피를 프록시 아이피로 설정하기에 vboxnet0의 아이피를 기억해두자.

그림 6. 가상 네트워크 인터페이스 아이피 확인

안드로이드 가상머신이 부팅완료되면 1234 비밀번호로 접근할 수 있다.

그림 7. 안드로이드 가상머신 부팅 완료시 화면

이제 메뉴 > Settings > Wi-Fi > WiredSSID를 마우스 우클릭하면 정보가 출력되는데 취소버튼을 누르고 Modify Network를 선택한다. 그 다음 프록시를 Manual로 설정하고 프록시 아이피를 vboxnet0 아이피인 192.168.56.1로 설정한다. 포트번호는 1337로 설정한다.

그림 8. 아이피 및 프록시 설정

마지막으로 안드로이드 바탕화면으로 돌아온 후 가상머신 현재 상태 저장을 선택한 후 종료한다.

그림 9. 가상머신 현재 상태 저장 선택

악성코드 분석 후 원복시키기 위해 스냅샷을 구성한다.

그림 10. 스냅샷 구성

안드로이드 가상머신을 제어하기 위해서 가상머신의 UUID와 스냅샷의 UUID 정보를 수집해야 한다. 이 정보는 가상머신의 .vbox 파일에서 정보를 찾아볼 수 있다.

vi ~/VirtualBox\ VMs/MobSF_VM_0.1/MobSF_VM_0.1.vbox

<Machine> 태그에서 uuid 값과 currentSnapshot 값을 추출한다.

그림 11. 가상머신 구성 확인

마지막 설정으로 settings.py에 지금까지 구성하는데 사용한 데이터들을 설정한다.

vi ~/Mobile-Security-Framework-MobSF/MobSF/settings.py

하단에 입력하는 데이터는 총 네 가지로 UUID, SUUID(Snapshot UUID), 가상머신 아이피, 프록시 아이피이다.

그림 12. MobSF 설정

설정이 모두 끝났다면 장고 웹 서버를 실행하여 웹으로 데이터를 요청하고 실행시킨다.

python ~/Mobile-Security-Framework-MobSF/manage.py runserver 192.168.0.134:8000


저작자 표시 비영리 동일 조건 변경 허락
신고

댓글을 달아 주세요

티스토리 툴바