ν‹°μŠ€ν† λ¦¬ λ·°

κ°œμš”

프리닀 ν”„λ ˆμž„μ›Œν¬λ₯Ό 톡해 μ‚¬μš©ν•˜λŠ” λ€ν”„λ„κ΅¬λ‘œ Windows λ˜λŠ” Linux ν™˜κ²½μ—μ„œ λͺ¨λ‘ 진행이 κ°€λŠ₯ν•©λ‹ˆλ‹€. λ§Œμ•½ 단말 λ‚΄λΆ€μ˜ 앱에 μ‚¬μš©μžμ˜ λ―Όκ°ν•œ 정보(ID,PWD) κ°™μ€κ²Œ μž…λ ₯λ˜μ–΄ μžˆμ„κ²½μš° Memory μ•ˆμ— μ €μž₯μ΄λ˜λŠ”λ° μ•”ν˜Έν™” μ²˜λ¦¬κ°€ λ˜μ–΄ μžˆμ§€ μ•Šμ•„ 민감정보가 κ·ΈλŒ€λ‘œ 유좜될 수 μžˆλŠ” κ²½μš°κ°€ μ‘΄μž¬ν•©λ‹ˆλ‹€.

 

Memoryλ₯Ό Dump μ‹œν‚¬μˆ˜ μžˆλŠ” μ½”λ“œλ₯Ό μ‹€ν–‰μ‹œν‚€κΈ° μœ„ν•΄μ„  Python 버전에 λ§žκ²Œλ” μ‚¬μš©ν•΄μ•Ό μ—λŸ¬μ²˜λ¦¬κ°€ λ‚˜νƒ€λ‚˜μ§€ μ•Šκ³  μ„±κ³΅μ μœΌλ‘œ μˆ˜ν–‰ν•  수 있게 λ©λ‹ˆλ‹€.

 

ν•˜λ‹¨μ˜ λ§ν¬μ—μ„œ fridump3 μ½”λ“œλ₯Ό λ‹€μš΄λ‘œλ“œν•©λ‹ˆλ‹€.

https://github.com/rootbsd/fridump3

 

rootbsd/fridump3

A universal memory dumper using Frida for Python 3 - rootbsd/fridump3

github.com

 

μ„€μΉ˜λœ python νŒŒμΌλ“€ μž…λ‹ˆλ‹€. μ—¬κΈ°μ„œ μ‚¬μš©ν•΄λ³Όκ²ƒμ€ "fridump3.py" μž…λ‹ˆλ‹€. μš°μ„  μ‚¬μš©ν•˜κΈ° 전에 μ‚¬μš©κ°€λŠ₯ν•œ λͺ…령어듀을 확인해 보도둝 ν•˜κ² μŠ΅λ‹ˆλ‹€.

 

Frida λͺ…λ Ήμ–΄

usage: fridump [-h] [-o dir] [-u] [-H HOST] [-v] [-r] [-s] [--max-size bytes]
optional arguments:
-h: 도움말 ν‘œμ‹œ
-o dir / --out dir: μ „μ²΄κ²½λ‘œ 제곡
-u / --usb: USBλ₯Ό 톡해 μ—°κ²°
-H HOST / --host HOST: IPλ₯Ό 톡해 μ—°κ²°
-v / --verbose: μžμ„Έν•œ 정보 좜λ ₯
-r / --read-only: λ©”λͺ¨λ¦¬μ˜ 읽기 μ „μš© 뢀뢄을 덀프
-s / --strings: λͺ¨λ“  덀프 νŒŒμΌμ—μ„œ λ¬Έμžμ—΄μ„ μ‹€ν–‰, 좜λ ₯ 디렉토리에 μ €μž₯
--max-size bytes: λ€ν”„μ‹œ 파일 μ΅œλŒ€ν¬κΈ° 지정

μ•±μ˜ λ©”λͺ¨λ¦¬λ₯Ό dump ν•˜κΈ° μ•žμ„œ PIDλͺ…령을 확인해야 λ©λ‹ˆλ‹€. frida-ps -U λ₯Ό μž…λ ₯ν›„ μžμ‹ μ˜ λ””λ°”μ΄μŠ€μ— μ„€μΉ˜λœ λͺ¨λ“  μ•±μ˜PID λ„˜λ²„κ°€ λ‚˜μ˜΅λ‹ˆλ‹€. μœˆλ„μš°μ— Frida μ„€μΉ˜ 방법은 ν•˜λ‹¨μ˜ 링크 μ°Έκ³ ν•˜μ‹œλ©΄λ©λ‹ˆλ‹€.

https://guleum-zone.tistory.com/137

python fridump3.py -u -r [PID] -s
python fridump3.py -u -s [packagename]

μ‚¬μš©λ  λͺ…령어듀은 -u / -r / -s λͺ…λ Ήμ–΄λ“€ μž…λ‹ˆλ‹€. λΆ„μ„ν•˜κ³ μž ν•˜λŠ” μ•±μ˜ λ””λ°”μ΄μŠ€λŠ” USB둜 μ—°κ²°λ˜μ–΄ μžˆκΈ°μ— -uλ₯Ό μ‚¬μš©ν•˜κ³  -r [pid] λͺ…령을 톡해 dump ν•˜λ €λŠ” μ•± 숫자λ₯Ό μž…λ ₯ν•΄μ£Όμ‹œλ©΄ λ©λ‹ˆλ‹€. -s λͺ…령은 μ•”ν˜Έν™” λ˜μ§€ μ•Šμ€ λ¬Έμžμ—΄μ„ .txt 파일둜 μΆ”κ°€ μƒμ„±ν•΄μ€λ‹ˆλ‹€.

 

*μ•ˆλ“œλ‘œμ΄λ“œν™˜κ²½μ—μ„œ Frida μ‚¬μš©μ‹œ λΆ„λͺ… λͺ…λ Ήμ–΄λŠ” μ •ν™•ν•œλ° "device not found" λΌλŠ” 문ꡬ가 λ‚˜νƒ€λ‚˜λ©΄ fridump3.py 파일의 79번째 ν–‰μ˜ usb_device() -> usb_device(1) 둜 λ³€κ²½ν•˜κ³  λ‹€μ‹œ ν•΄μ£Όμ‹œλ©΄ λ©λ‹ˆλ‹€.

 

일정 μ‹œκ°„ κΈ°λ‹€λ €μ£Όμ‹œλ©΄ cmd의 ν”„λ‘¬ν”„νŠΈκ°€ λλ‚œμ‹œμ μ΄ μƒκΉλ‹ˆλ‹€. dump 된 λ©”λͺ¨λ¦¬ λ°μ΄ν„°λŠ” "dump" λΌλŠ” 디렉토리에 μƒμ„±λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. 보톡 λͺ‡λ°±κ°œ λ‹¨μœ„μ˜ DATA 파일이 μƒμ„±λ˜κΈ°μ— ν•˜λ‚˜μ”© λΆ„μ„ν•˜λŠ”κ²ƒμ€ λ„ˆλ¬΄λ‚˜ λ§Žμ€ μ‹œκ°„μ΄ μ†Œμš”λ©λ‹ˆλ‹€.

 

findstr /ismn "μ°Ύκ³ μžν•˜λŠ” λ¬Έμžμ—΄" *
-i : 찾을 λ•Œ λŒ€/μ†Œλ¬Έμž ꡬ뢄X
-s : ν˜„μž¬μ˜ μœ„μΉ˜λΆ€ν„° ν•˜μœ„μ˜ λ””λ ‰ν† λ¦¬κΉŒμ§€ μΌμΉ˜ν•˜λŠ” νŒŒμΌμ„ 찾음
-m : λ¬Έμžμ—΄μ„ 찾으면 νŒŒμΌμ΄λ¦„λ§Œ λ³΄μ—¬μ€Œ
-n : μΌμΉ˜ν•˜λŠ” 각 쀄 μ•žμ— 쀄 번호 λ³΄μ—¬μ€Œ

"dump" 디렉토리에 String.txt ν…μŠ€νŠΈ 파일이 μΆ”κ°€μ μœΌλ‘œ μƒμ„±λ˜μ–΄ ν‰λ¬Έμ˜ λ¬Έμžμ—΄λ“€μ΄ μ§‘ν•©λ˜μ–΄ μžˆμ–΄ μ°Ύμ„μˆ˜ μžˆμ§€λ§Œ κ°’λ§Œ λ…ΈμΆœλ˜κΈ° λ•Œλ¬Έμ— λ³€μˆ˜λͺ…은 λ‚˜νƒ€λ‚˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. λ³€μˆ˜λͺ…κΉŒμ§€ λͺ¨λ‘ ν™•μΈν•˜κ³  μ‹Άλ‹€λ©΄ cmd λͺ…령을 톡해 μ•”ν˜Έν™” λ˜μ§€μ•Šμ€ λ¬Έμžμ—΄μ„ κ²€μƒ‰ν•˜μ—¬ μ‰½κ²Œ μ°ΎμœΌμ‹€μˆ˜ μžˆμŠ΅λ‹ˆλ‹€.

 

νŒŒμΌμ„ μ—΄λžŒν•˜κΈ°μœ„ν•΄μ„  HEX 에디터가 ν•„μš”ν•©λ‹ˆλ‹€. notepad ++ 32λΉ„νŠΈμ˜ ν™•μž₯ ν”ŒλŸ¬κ·ΈμΈμ„ μ‚¬μš©ν•˜λŠ” 방법도 μ‘΄μž¬ν•˜μ§€λ§Œ 개인적으둜 HxD ν”„λ‘œκ·Έλž¨μ„ μ“°λŠ”κ²Œ λ”μš± νŽΈν•˜κ³  μˆ˜μ •λ„ μš©μ΄ν•©λ‹ˆλ‹€.

https://mh-nexus.de/en/hxd/

 

HxD - Freeware Hex Editor and Disk Editor | mh-nexus

HxD - Freeware Hex Editor and Disk Editor HxD is a carefully designed and fast hex editor which, additionally to raw disk editing and modifying of main memory (RAM), handles files of any size. The easy to use interface offers features such as searching and

mh-nexus.de

ν•œκΈ€ μ•± 덀프 μ‹œ

μ•± 이름이 ν•œκΈ€λ‘œ λ˜μ–΄μžˆλŠ” μ•±μ˜ 경우 λ©”λͺ¨λ¦¬ 덀프 μ‹œ μ œλŒ€λ‘œ λ˜μ§€ μ•ŠλŠ” κ²½μš°κ°€ λ°œμƒν•©λ‹ˆλ‹€. κ·ΈλŸ΄λ•ŒλŠ” fridump3.py 의 79번쨰 라인의 μ½”λ“œλ₯Ό μˆ˜μ •ν•΄μ£Όμ‹œλ©΄ λ©λ‹ˆλ‹€.

# μˆ˜μ • μ „
session = frida.get_usb_device(1).attach(APP_NAME)

# μˆ˜μ • ν›„
session = frida.get_usb_device(1).attach(int(APP_NAME)

'MOBILE' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

[iOS]Jailbreak 탐지 우회(Frida)  (0) 2021.01.24
[iOS] Keychain Dumper  (0) 2021.01.20
[iOS] νƒˆμ˜₯ ν™˜κ²½μ—μ„œ iPA μ„€μΉ˜  (0) 2020.12.23
프리닀(Frida) ν™˜κ²½ ꡬ좕  (1) 2020.12.21
IOS 14.x νƒˆμ˜₯(Jailbreak)  (0) 2020.12.19
κ³΅μœ ν•˜κΈ° 링크
Comment