포스팅 썸네일 이미지

ANDROID/Hooking

[OWASP-MSTG] Uncrackable level 3 Write-Up

오늘은 Uncrackable level 3 풀이를 작성합니다. 안드로이드 후킹 오랜만에 하네용 문제 분석 우선 앱을 먼저 실행시켜보면 루팅이 감지되었다고 나가라고 하네요. jeb와 jadx를 통해서 분석을 해봅시다 루팅 감지 후 system.exit을 부르는건 동일하므로 앞선 문제들에서 사용한 방법과 동일하게 진행해보았습니다. 그 방법을 사용할 경우, 다음과 같이 종료됩니다. 뭔가 싶어 로그를 살펴보니, 뭔가를 감지했다고 꺼지네요. Text검색을 해봐도 해당 텍스트가 나오지 않는 것을 보아, import한 lib파일 안에서 뭔가를 검색하지 않을까?라는 생각이 드네요. 더 자세히 MainActivity를 분석해봅시다. private void verifyLibs() { Iterator v2; ZipFile ..

2021.05.17 게시됨

 포스팅 썸네일 이미지

ANDROID/Hooking

[OWASP-MSTG] Uncrackable level 2 Write-Up

똑같이 root detection을 진행하네요. 이건 uncrackable1의 코드를 그대로 들고 왔습니다. 그러면 이렇게 잘 접속되는걸 볼 수 있습니다 진짜 문제는 여기서부터죵 근데 verify를 분석하기 전에 MainActivity 전체적인 구조를 먼저 봅시다... 코드 분석 일단 두가지만 보고 넘어갑시다 1. 새로운 라이브러리 호출 foo라는 라이브러리를 호출하는 것을 볼 수 있습니다. 따라서 저 라이브러리 내부의 함수를 활용할 경우, 라이브러를 분석해야할 수도 있죠? 2. AsyncTask 추가 onCreate함수 내부에 AsyncTask라는 클래스가 추가된 것을 볼 수 있습니다. AsynTask는 주로 멀티스레딩 코드를 작성할 때 사용하는데, 이 경우는 디버깅을 감지하네요. 특히 중간부분에 있는..

2021.01.22 게시됨

 포스팅 썸네일 이미지

ANDROID/Hooking

[OWASP-MSTG] Uncrackable level 1 Write-Up

우선 문제 파일을 열어보자. 실행시키면 무조건 Root detected라면서 앱을 종료하게끔 하고있다. 따라서 jadx로 다시 디컴파일 해보았다. 우선 아까 앱을 실행시켰을 때 볼 수 있었던 "Root detected!"부분을 찾아보았다. c.a, b, c함수를 찾아본 뒤 하나라도 해당이 되면 a함수를 실행시킨다. 다음은 a메서드 의 전체 부분이다. 텍스트를 출력시키고, ok버튼을 클릭하면 system.exit을 수행하도록 되어있다. 그럼 우리의 목표는 ok를 눌러도 프로그램이 종료되지 않도록 설계하는 것이다. 우리는 frida를 통해 hooking을 한다면 exit이 호출되어도 종료되지 안도록 할 수 있습니다. 기본적인 hooking 참고 : mingzz1.github.io/pentesting/andr..

2021.01.17 게시됨

 포스팅 썸네일 이미지

ANDROID/Hooking

[Frida-Lab] level 1~8 Write-Up

0. 연결하기 우선 adb connect 127.0.0.1:62001로 Nox와 서버로 연결을 해줍니다. 주소인 127.0.0.1:62001은 고정되어있는 주소라고 하네요. 그리고 adb shell로 연결해 안드로이드 시스템에 연결해줍시다. 또 frida-server도 확인해줘야합니다 다음처럼 하게되면 frida-server를 실행할 수 있습니다. ps는 현재 프로세스를 확인하는 작업이니 확인하면 될거같습니다. 그다음에는 Nox에서 Frida-Lab을 실행합시다. 그럼 다음과 같은 창이 뜨는데, 각 숫자는 레벨을 뜻합니다. 따라서 우리는 level1을 풀고 싶은거니깐 1번 내용인 Change class challenge_01's variable 'chall01' to: 1 부분을 잘 보면 되겠졍? 1. ..

2021.01.10 게시됨