2020/Android App Hacking(22)
-
HACKTHEBOX. Don't Overreact
정적분석 1. apktool d app-release.apk AndoirdManifest.xml , xml 파일 등 확인. 2. jadx-gui app-release.apk Java 코드 분석 React Native 앱. React Native 앱 코드는 bundle형태의 문자열로 확인 및 수정이 가능 assets/index.android.bundle 동적분석 Nox, Drozer C:\> adb connect 127.0.0.1:62001 C:\> adb towrad tcp:31415 tcp:31415 C:\> drozer console connect 앱 명 : com.awesomeproject dz> run app.package.info -a com.awesomeproject dz> run app.pa..
2022.10.05 -
UnCrackable_level2.apk 풀이, Frida Native Library 후킹
level1과 마찬가지로 디바이스의 루팅여부를 판단한다. exit함수 후킹코드를 작성하고 프리다를 통해 실행시킨다. 위 과정은 이전 게시글에 설명되어 있음. 이제 비밀번호를 확인하는 과정을 살펴본다. this.m.a (입력값): m.a은 무엇인가? CodeCheck 클래스 객체 m CodeCheck클래스는 native library 함수 bar을 사용한다. CodeCheck클래스의 this.m.a( 입력값 ) 의 반환값은 즉 CodeCheck.a(input) = bar(input) 그럼 native library에 존재하는 bar함수는 어떻게 분석할 수 있는가? IDA, Ollydbg등의 프로그램을 활용할 수 있지만, 리눅스 리버싱 도구 radare2 프로그램을 사용할 것이다. 사용 명령 : rabin2..
2020.05.20 -
Uncrackable_level1.apk 풀이, Frida 후킹
분석환경: Kalilinux, Nox 대상 앱: Uncrackable_level1.apk 앱 실행 시 루팅이 탐지되고, 알림창을 끄는 OK버튼을 클릭하면 exit() 함수가 실행되어 앱이 종료된다. -> 앱을 실행시켜 본 뒤 자바 코드를 읽고 파악하였음 코드 획득 # apktool d Uncrackable_level1.apk => Android.xml, Smali, library 획득 # d2j-dex2jar Uncrackable_level1.apk => dex 형식의 안드로이드 파일을 jar형식으로 변환시켜 사람이 읽을 수 있는 자바 코드를 획득한다. 먼저 앱을 실행시키기 위해서 exit함수를 후킹해야한다. = exit함수를 조작하여 앱이 종료되지 않게한다. exit() function - java.l..
2020.05.20 -
Frida Java Script를 활용한 프로세스 후킹
[1] C언어로 작성된 프로세스가 동작중이다. [2] 해당 프로세스에 프리다를 통해 자바 스크립트를 삽입한다. [3] 인터프리터가 C언어 파일을 읽은 뒤 자바 스크립트를 읽고 동작이 진행된다. 실행파일로 컴파일 후 실행시킨다. $ clang hello.c -o hello $ frida -l agent.js hello hello프로세스에 프리다 명령어를 실행시켜 agent.js 자바스크립트 코드를 삽입한다. Interceptor.attach( Target, Callbacks ); Target: 함수의 주소를 지정한다. (우리는 f함수의 주소를 알고 있기에 f함수를 조작할 수 있다.) ** ptr("0x80491d0")
2020.05.19 -
Android Hacking: Ettercap 사용법
Kali linux에 내장되어있는 네트워크 패킷들을 감청 변조할 수 있는 툴이다. 돋보기를 클릭해서 연결되어 있는 호스트들을 확인할 수 있다. 100.100.100.2 는 현재 칼리리눅스의 게이트웨이이다. 해당 주소를 Target1에 추가한다. Target1은 게이트웨이가 된다. ettercap이 사용하는 설정파일로 etter.dns의 정보에 기반하여 사용자에게 홈페이지 명과 홈페이지 아이피 주소를 서로 변환하는 작업을 수행한다. microsoft.com에 대한 아이피 정보가 기록되어 있는데 이 정보를 임의로 조작한 악의적인 사이트로 변경한 뒤 DNS Spoofing공격을 시도한다면 사용자가 microsoft 홈페이지 접속시 악의적 사이트로 접속하게 된다. 설정을 변경한 뒤 ettercap에서 플러그인을..
2020.02.13 -
Android Hacnking: Setup
1. 칼리리눅스 설치 2. 윈도우와 파일을 공유할 수 있는 환경 설치 hfs을 통해 파일공유 # apt-get install open-vm-tools open-vm-tools-desktop - 텍스트 복사 붙여넣기 3. 가상 디바이스는 Nox 활용 4. netcat을 통한 칼리리눅스와 데스크탑 통신 l: listening v: verbose p:port지정 칼리리눅스에서 데스크탑으로 연결 시도 netcat포트 오픈 시 -e cmd.exe 인자를 추가하면 해당 포트로 연결되는 서버에서 명령어를 사용할 수 있다.
2020.02.13