일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- Blind Injection
- 아파트
- 안드로이드
- webhacking.kr
- 스마트폰
- 프리다
- Frida
- 월세
- 전세
- ADB
- Los
- 후킹
- 일기
- APKManager
- 부동산분석
- 서울
- 호갱노노
- 부동산
- 매물
- NOX
- Mid()
- 블라인드 인젝션
- 투자
- 아파트실거래가
- 모의해킹
- 웹해킹
- SQL INJECTION
- Lord of SQLInjection
- jeb
- UnCrackable
- Today
- Total
일단 쓰고보자
Nox 에서 fridump3 로 메모리 덤프하기 본문
#서론
이 간단한 걸 하기 위해 얼마나 삽질을 했는가
#목차
1. Nox 설치
2. Python 설치
3. frida-server 설치
4. fridump 설치
5. frida 설치
6. 대상 앱 설치 및 메모리 덤프
#시작
1. Nox 설치
- 메인 페이지에 대문짝만하게 다운로드 링크 걸려있음
- 설치 완료한 뒤 ROOT켜기 체크한 뒤 Nox 재시작
2. Python 설치
- 아래 URL에서 운영체제에 맞는 Python 설치
https://www.python.org/downloads/
- 환경변수 추가를 위해 Add Python 3.8 to PATH 체크한 뒤 Install Now 눌러서 설치 진행
(환경변수 없으면 실행할 때마다 절대경로 써야돼서 귀찮아짐...)
- 명령어가 동작하면 설치 완료
3. frida-server 설치
- 설치 전 [Nox 설치된 디렉터리]/bin 위치로 이동하여 안드로이드 운영체제 비트 확인 (32bit)
- 아래 URL에서 운영체제에 맞는 frida-server 설치 (frida-server-12.8.9-android-arm.xz)
https://github.com/frida/frida/releases
- 설치한 파일 Nox에 드래그하여 복사 (꼭 드래그해서 복사하면 Pictures 디렉터리로 이동하더라)
# unzx frida-server-12.8.9-android-arm // 압축해제
# mv frida-server-12.8.9-android-arm frida-server // 간편하게 이름 변경
# ./frida-server & // 백그라운드 실행 권한 문제로 실패
- /tmp로 파일 이동해도 안돼서 찾아보니 루트 디렉터리가 읽기 전용으로 마운트 되어있음
- 쓰기 권한으로 마운트 다시 시도한 뒤 권한 변경
# mount -o,remount -t rootfs /
- 이처럼 Permission 문제가 귀찮으신 분들은 /data/local/tmp 아래에 파일 넣고 수정하면 됨
- frida-server 백그라운드로 실행
4. fridump 설치
- 아래 링크에서 Clone or Download 클릭해서 설치
https://github.com/rootbsd/fridump3
- 아래와 같이 압축 푼 파일들 [Python 설치 디렉터리]/Scripts 디렉터리로 이동
- 혹시 fridump3 설치해도 동작하지 않으면 fridump 설치해보길 추천
5. frida 설치
#pip install frida
- frida 설치하려고 했더니 pip 업그레이드 해주라고 해서 업그레이드 하고 다시 시도
#python -m pip install --upgrade pip
#frida-ps -U
- 실행 안되는 경우 frida-tools 설치가 안돼서 그러니, frida-tools 설치 후 다시 시도
#pip install frida-tools
#frida-ps -U
6. 대상 앱 설치 및 메모리 덤프
- UnCrackable-Level1.apk 다운받아 Nox 에 드래그하여 설치
https://github.com/OWASP/owasp-mstg/tree/master/Crackmes
- Uncrakable1 앱 실행 (루팅 됐다고 뭐라고 함)
- 메모리 덤프 대상 패키지명 확인 후 fridump3.py 이용하여 메모리 덤프 시도
#frida-ps -U | findstr uncrackable1
#fridump3.py -u -s owasp.mstg.uncrackable1
※fridump3.py 바로 불렀을 때 에러나면 python fridump3.py ~ 처럼 python 같이 입력
- 디바이스를 못 찾음. 절망
- 구글링 하면 fridump 쓸 때 수정하라고 많이 나오는 게 있음. 수정 시도
- 79번째 줄 get_usb_device() → get_usb_device(1)로 변경
- 다른 오류 나옴 unable to inject library into process without libc
- 찾아보니 frida-server가 애뮬레이터(안드로이드) 버전을 지원하지 않아서 생기는 문제인 것 같다. 아까 frida-server 설치했을 때로 돌아가 frida-server-12.8.9-android-arm.xz 가 아닌 frida-server-12.8.9-android-x86.xz 로 재설치 해보았다. 생각해보니 운영체제에 맞는 frida-server 설치하라고 해놓고, 왜 x86 이 아닌 arm을 설치했는가 의문이 든다.
- 아무튼 재시도해보니 정상적으로 메모리 덤프 성공
- 메모리 덤프 파일은 [Python 설치 디렉터리]/dump 에 저장
- AstroGrep 툴로 덤프 디렉터리 지정 후 검색할 문자열 입력하여 찾기
※ ADB 설치페이지
https://developer.android.com/studio/releases/platform-tools
'모의해킹' 카테고리의 다른 글
ADB와 연결 된 device가 unauthorized 상태일 때 (10) | 2020.04.21 |
---|---|
안드로이드 7.0 이상 버프잡기 (SSL Pinning 우회) (1) | 2020.02.26 |