외로운 Nova의 작업실

insecurebanckv2 - 사전 환경 구축 본문

Mobile App Penetesting/Android App Vulnerability

insecurebanckv2 - 사전 환경 구축

Nova_ 2023. 4. 30. 23:33

- 공부 방법

이번에는 안드로이드 앱 모의해킹에대해서 경험해보려고합니다. 책은 "안드로이드 모바일 앱 모의해킹"으로 길을 나갈 것 입니다. 책에서는 취약한 안드로이드 앱인 insecurebankv2를 가지고 모의해킹을 실습합니다. 다운 방법은 버전이 많아 달라서 아래 사이트를 참고하는게 좋습니다.

https://velog.io/@2rlo/InsecureBankv2-%EC%82%AC%EC%A0%84-%ED%99%98%EA%B2%BD-%EA%B5%AC%EC%B6%95

 

[InsecureBankv2] 사전 환경 구축

InsecureBankv2 사전환경 구축 | InsecureBankv2 설치 | Drozer | abe.jar | jd-gui | dex2jar | apktool

velog.io

이후 안드로이드 스튜디오에서 앱의 소스코드를 키면 에러가 납니다. http 라이브러리가 SDK23이상에서는 사용을 deprecated 되었기떄문입니다. 하지만 빌드를 해보면 잘 되니 걱정 안하셔도됩니다.

 

- apk 리버싱 도구

<apktool>

apktool은 apk를 dex파일, 매니페스트 파일등으로 되돌려줍니다. 아래 사이트에서 다운로드 할 수 있습니다.

https://ibotpeaches.github.io/Apktool/

 

Apktool - A tool for reverse engineering 3rd party, closed, binary Android apps.

A tool for reverse engineering 3rd party, closed, binary Android apps. It can decode resources to nearly original form and rebuild them after making some modifications. It also makes working with an app easier because of the project like file structure and

ibotpeaches.github.io

설치방법은 아래 블로그를 참조하면 좋습니다.

https://ndb796.tistory.com/448

 

간단한 Apktool 설명, 설치, 사용 방법 (안드로이드 앱 분석)

Apktool은 대표적인 안드로이드 애플리케이션(Android Application) 대상의 리버스 엔지니어링 도구입니다. APK 파일을 분석하여 리소스를 뽑아낼 수 있고(디코딩), 코드를 수정하여 다시 재빌드(Rebuild)

ndb796.tistory.com

<dex2jar>

dex2jar은 dex파일을 자바 파일로 변경해주는 역할을 합니다. 어셈블리어를 c언어로 바꾸는 것과 같습니다. 다운은 아래에서 합니다.

https://github.com/pxb1988/dex2jar

 

GitHub - pxb1988/dex2jar: Tools to work with android .dex and java .class files

Tools to work with android .dex and java .class files - GitHub - pxb1988/dex2jar: Tools to work with android .dex and java .class files

github.com

다운후에는 dex2jar응용파일을 추출해야하는데, 아래 설명대로 합니다.

In the root directory run: ./gradlew distZip
cd dex-tools/build/distributions
Unzip the file dex-tools-2.1-SNAPSHOT.zip (file size should be ~5 MB)
Run d2j-dex2jar.sh from the unzipped directory

Example usage:
sh d2j-dex2jar.sh -f ~/path/to/apk_to_decompile.apk

And the output file will be apk_to_decompile-dex2jar.jar.

 

<JD-GUI>

JD-GUI는 자바 파일들의 GUI형태로 편한게 보여줍니다. dex2jar로 추출한 자바파일들을 편하게 볼 수 있습니다.

http://java-decompiler.github.io/

 

Java Decompiler

The “Java Decompiler project” aims to develop tools in order to decompile and analyze Java 5 “byte code” and the later versions. JD-GUI is a standalone graphical utility that displays Java source codes of “.class” files. You can browse the reco

java-decompiler.github.io

 

<bytecode viewer>

apk파일을 던져주면 달빅 코드와 자바 코드를 동시에 보여주는 강력한 기능을 합니다. 아래 링크에서 다운로드할 수 있습니다.

https://github.com/Konloch/bytecode-viewer/releases

 

Releases · Konloch/bytecode-viewer

A Java 8+ Jar & Android APK Reverse Engineering Suite (Decompiler, Editor, Debugger & More) - Konloch/bytecode-viewer

github.com

jar 파일을 다운받은 후 사용법은 아래와 같습니다.

java -jar Bytecode-Viewer-2.10.x.jar

 

Comments