이번 주에 한 일
- syssecApp.apk 동적 분석_Frida이용(아래 보고서 링크에서 확인할 수 있다.)
Android studio
기존에 설치한 안드로이드 스튜디오에서 frida와 adb 설정을 해 준다.
일단 먼저 frida-tools를 깔아준다.

그 다음 frida-server가 설치된 폴더로 들어가 안드로이드 에뮬레이터 안에 윈도우의 frida-server 실행파일을 복사하기 위해 adb push 명령어를 이용한다.
복사하여 안에 들어간 파일이 실행 가능한 권한을 가질 수 있도록 chmod 명령어로 권한을 준다.

그 후, adb root 명령어를 이용해 관리자 권한을 얻어야 한다. 왜냐하면 안드로이드 에뮬레이터는 기본적으로 일반 사용자 모드이기 때문에 분석을 하려면 관리자 권한이 필요하다. 처음에 관리가 권한 없이 에뮬레이터 안에서 frida 서버를 실행하려고 하니 거부된 것이 아래 사진의 첫 번째 명령어 부분이다.
adb shell "/data/local/tmp/frida-server" 이 코드는 frida-server를 에뮬레이터 안에서 실행된다.
frida-server는 안드로이드 안에서의 정보를 윈도우로 보내주어 실시간 흐름을 감시할 수 있다.

실행 후, frida-ps -U 명령어를 통해 에뮬레이터 안에서 실행 중인 프로세스들을 아래 사진과 같이 윈도우에서 볼 수 있게 된다.

그 다음 보고서 안에 있는 링크를 타고 들어가 아래 사진의 악성코드를 다운로드 받아준다. 아래 사진에서 밑쪽을 향하는 화살표 모양을 누르면 설치가 된다.

설치를 하고 앱을 바로 열어보면 일반적인 게임 앱이 필요한 권한이라기에는 많아보이는 권한 접근 허용을 요구한다. 사진에서 보면 문자, 연락처, 위치, 캘린터, 전화, 통화기록으로의 접근 허용을 요구한다.
기본적으로 모두 허용이 된 상태에서 사용자에게 허용/거부 여부를 물어보기 때문에 일반 사용자들이 게임인줄 알고 큰 생각없이 continue 버튼을 쉽게 누를 수도 있겠다는 생각이 들었다.

게임 화면 안으로 들어가면 아래 사진과 같이 알림창이 나온다. 이 앱이 지금 안드로이트 에뮬레이터 버전보다 더 낮은 버전에서 만들어져서 적절하게 돌아가지 않을 것이라고 한다. 이거까지 감안을 해서 일부러 안드로이드 12.0 버전의 에뮬레이터를 설치했는데 더 낮은 버전으로 설치했어야 했나보다.. 다음 실습에서는 더 낮은 버전의 에뮬레이터를 다시 설치해 이 앱을 실행해 봐야할 것 같다. (참고로 현재(2026-04-02 기준) 안드로이드의 가장 최신 버전은 16이다.)

OK를 누르고 앱 안으로 들어가면 아래 사진과 같이 화면 비율이 이상한 미로찾기 게임이 나온다. 버전이 안맞아서 그런지 누르면 하얀 점이 움직이기는 하는데 딱히 컨트롤을 할 수는 없었다. 아무래도 버전 차이 때문에 화면이나 컨트롤이나 잘 맞지 않은 것 같다. 하지만 중요한건 게임화면이 아니다!!!!!!!!!!!!!!!!!!!!

게임을 실행한 후, 호스트 윈도우 cmd창에서 adb logcat을 입력해주면 adb를 통해 에뮬레이터에서 발생하는 모든 로그를 확인할 수 있다.
아래 사진과 같이 단말기 식별 정보를 가져오는 것은 거부되었지만, 문자나 통화기록(clog), 브라우저 북마크(bbookmarks), 브라우저 검색기록(bsearches), 위치정보(geocoord)등을 수집하고 서버로 보내는 것에 대한 로그가 보인다.

에뮬레이터 환경에는 연락처나 일정과 같은 것이 아무것도 없어서 이런 정보들은 모드 SKIPPING하였고, 위치 정보를 수집해 서버로 보내고 있다. 아래 사진의 마지막에 반복되는 timestamp에 따른 위도와 경도를 통해 사용자의 실시간 위치를 수집할 수 있다. (아래 사진에 있는 위치 정보는 내 위치 정보다........... 개인정보 무료공개 합니다^^7)

다음에는 본격적으로 악성코드가 악성 내용을 보내는 주소인 127.0.0.1:53471 서버를 만들고 열어서 이곳으로 보내지는 사용자의 개인정보들을 직접 확인해볼 것 이다.
'악성코드' 카테고리의 다른 글
| 6주차_Jadx(1) (0) | 2026.05.18 |
|---|---|
| 5주차_Frida(1) (0) | 2026.05.11 |
| 3주차_학습용 악성코드 정적분석 (0) | 2026.03.29 |
| 2주차_악성코드 분석 툴 (0) | 2026.03.23 |
| 1주차_capa 규칙 (0) | 2026.03.16 |