본문 바로가기

CTF/Write-up

Reto Android Crackme #2

crackme2hpys.apk

이번 문제는 smali code 패치 때문에 시간이 조금 걸렸다.


2개의 액티비티가 보인다.


그리고 조금 폴더를 둘러보면 이렇게 보이는데 이게 성공시 나타나야 하는 화면같다.


별다른 건 보이지 않고 success.jpg만 있기 때문에 확신을 할 수 있었다.


한번 실행을 해보자

여기서 Exit를 누르면 해당 앱은 종료되고

Buy App을 눌렀을 땐 미리 설정해둔 url로 이동하게된다.

url로 이동했을 때 없는 페이지기 때문에 결론은 아무것도 안일어난다.


이제 소스를 볼 차례다. 클래스는 봤던대로 보인다. 

우선 MyAndroidAppActivity부터 보면


이게 끝이다. 중요한 부분은 LicenseCheck 클래스이다.


우선 base64와 바이트 배열이 보이는데 나중에 License를 구할 때 쓰는거 같다.


이부분이 앱을 실행했을 때 나타났던 부분이다.

버튼이 클릭되면 market 주소로 들어가는데 등록되지 않은 앱이라 없는 페이지라 뜬다.


해당 메소드가 중요하다고 생각되어 smali code 패치를 통해 호출을 하기로했다.

위에 소스에 있던 buy app 버튼을 누르면 allow를 호출하도록 패치를 했었는데

무슨일 인지 잘 되지 않았다.


그래서 allow안에 있던 setContenview만 따로 쓰기로 했다.

이렇게 변경을 통해 buy app을 누르면 success.jpg를 실행하도록 패치했다.


앱을 실행해서 Buy App을 누르면 패치가 성공적으로 된 것을 확인할 수 있다.

'CTF > Write-up' 카테고리의 다른 글

defcon 2017  (0) 2017.05.01
TAMU CTF reversing  (0) 2017.04.20
Reto Android Crackme #1  (0) 2017.03.05
pragyan ctf MI6  (0) 2017.03.03
Hashdays 2012 Android Challenge  (0) 2017.02.26