ν°μ€ν 리 λ·°
κ°μ
νλ¦¬λ€ νλ μμν¬λ₯Ό ν΅ν΄ μ¬μ©νλ λ€νλκ΅¬λ‘ 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 νλ‘κ·Έλ¨μ μ°λκ² λμ± νΈνκ³ μμ λ μ©μ΄ν©λλ€.
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 |