CodeGate 2018 - droid.apk

2021. 9. 29. 16:15문제연습/CTF 실전

반응형

 

본 티스토리 블로그는 PC환경에 최적화되어 있습니다.

모바일 유저분들은 아래 네이버 블로그를 이용해 주세요.

 

 

CodeGate 2018 - droid.apk

본 네이버 블로그는 모바일 환경에 최적화되어 있습니다. PC 유저분들은 아래 티스토리 블로그를 이용해 ...

blog.naver.com

 

codegate 2018 ::

droid.apk

rev, android

 

codegate 2018 문제 해설을 한곳에 모아서 진행하면 좋은데 글 자체가 매우 길어져서 따로 포스팅하는 점 양해 바랍니다.

한번 안드로이드 APK 파일에서 플래그를 추출해 보도록 하겠습니다

 

1. AndroidManifest.xml

해당 파일을 확인하여 가정 먼저 동작하는 activity는 아래와 같습니다.

바로 com.example.puing.a2018codegate.MainActivity 코드를 확인해 보도록 하겠습니다.

 

 

2.MainActivity

MainActivity가 Main2Activity를 호출하고 있습니다.

바로가서 해당코드를 뜯어보도록 하겠습니다.

 

 

3. Main2Activity

main2 액티비티는 사용자가 입력하는 값과 이전에 입력한 아이디 값을 난독화한 값이 동일할 경우 main3 액티비티를 호출함을 알 수 있습니다.

 

 

4. Main3Activity

main2 액티비티와 마찬가지로 keygen처럼 입력값 검증 루틴을 거쳐 true를 만들면 main4 액티비티를 호출합니다.

 

 

5. Main4Actinity

코드 마지막 부분을 확인하면 일종의 플래그를 불러오는 듯한 코드가 확인됩니다.

물론 해당 함수는 native이기에 바로 확인이 불가능합니다.

현재 리패키칭이 불가능한 환경이기에 해당 네이티브 dll 파일을 추출하여 IDA로 분석해 보도록 하겠습니다.

아래는 native lib 파일을 저장한 후 IDA로 열어본 화면입니다.

 

흠... 코드가 굉장히 더럽습니다.

아마도 해당 apk 파일의 코드를 패치해서 풀어라는 게 출제자 의도인 듯합니다.

 

코드를 수정한 후 다시 리패킹 및 사이닝을 진행하여 플래그를 추출한 풀이는 아래 링크를 참고하시길 바랍니다.

 

Codegate 2018 Welcome to droid

다운받은 apk을 분석하기 전에 일단 설치를 해봤다. 근데 apkmanager로 디컴파일 후 리패키징할 때 자꾸 이상한에러가떴다. 그래서그냥 apktool.jar랑 sign.jar을 이용해서 직접 리패키징 및 사이닝을 한

jeonyoungsin.tistory.com

반응형

'문제연습 > CTF 실전' 카테고리의 다른 글

CodeGate 2018 - BaskinRobins31  (0) 2021.06.12
SECCON Quals 2015 - rock_paper_scissors  (0) 2021.06.11
Defcamp CTF Quals 2015 - r100  (0) 2021.06.05
CodeGate 2012 - Forensic 100 연습  (0) 2020.03.16