ํฐ์คํ ๋ฆฌ ๋ทฐ
๊ฐ์
Frida๋ Ole๊ฐ ๊ฐ๋ฐํ DBI(Dynamic Binary Instrumentation) ํ๋ ์์ํฌ์ ๋๋ค. ํ์ด์ฌ ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ค์ด์ง ํด์ด๊ธฐ์ ํ์ด์ฌ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฃผ๋ก ์ฌ์ฉํฉ๋๋ค. ๋ํ ์ฐ๊ฒฐ๋ ๋จ๋ง์ ๋ํ ๋ถ์์ ์ํํ๊ธฐ ์ํด์ ๋๋ฐ์ด์ค์ Frida ์๋ฒ๋ฅผ ์ถ๊ฐ์ ์ผ๋ก ๊ตฌ์ถํด๋์ด์ผ ์ํํ๊ฒ ์๋์ด ๋ฉ๋๋ค.
*Instrumentation ์ด๋ ๋จ์ด๋ "์คํ ์ค์ธ ์ฑ์ ํน์ Javascript ์ฝ๋๋ฅผ Injectionํด์ ๋ถ์ํ ์ ์๊ฒ ๋์์ฃผ๋ ๊ฒ์ ์๋ฏธ"
๋๋ฒ๊น ์ด์ธ์ Frida ๊ธฐ๋ฅ
- ํจ์ ํํน(๋ฐํ ๊ฐ ๋ณ๊ฒฝ)
- ์คํ์ค์ธ ์ฑ์ ๋ด๋ถ ํจ์๋ฅผ ์์ ๋ฐ ๋๋ฒ๊น
- ํธ๋ํฝ ์ค๋ํ
- ์ํธ Decrypt
- ํ์ฅ or ๋น ํ์ฅ ๋จ๋ง์์๋ ์ฌ์ฉ ๊ฐ๋ฅ
๋ก์ปฌ PC์ ํ๋ฆฌ๋ค ํจํค์ง๋ฅผ ์ค์นํ๊ธฐ ์ํด ์๋์ฝ๋ค ํ๊ฒฝ์ ์ด์ฉํ๋๋ก ํ๊ฒ ์ต๋๋ค. ์๋์ฝ๋ค๋ฅผ ๊ตฌ์ถํ๋ ๋ฐฉ๋ฒ์ ํ๋จ์ ๋งํฌ๋ฅผ ํตํด ๊ตฌ์ถํด์ฃผ์๋ฉด ๋ฉ๋๋ค.
https://guleum-zone.tistory.com/136
pip install frida
pip install frida-tools
๋๋
pip install frida==14.2.13
pip install frida-tools==9.2.1
frida ๋ช ๋ น์ผ๋ก๋ง install ํ ๊ฒฝ์ฐ ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ ๊ฒ๋ค๋ง ์ค์น๋์ด bat ๊ด๋ จ ํ์ผ๋ค์ด ์กด์ฌํ์ง ์๋ ๊ฒฝ์ฐ๊ฐ ์กด์ฌํฉ๋๋ค. ๊ทธ๋ด ๊ฒฝ์ฐ frida-tools๋ฅผ ์ ๋ ฅํ์ฌ ์ถ๊ฐ์ ์ผ๋ก ์ค์นํด์ฃผ์๋ฉด ํ์ํ ํ์ผ๋ค์ด ๋ชจ๋ ์ค์น๋ฉ๋๋ค.
frida --version
ํ๋ฆฌ๋ค ๋ฒ์ ์ด ๋ํ๋๋ฉด ์ ๋๋ก ์ค์น๋ ๊ฒ์ ๋๋ค. ๋ฒ์ ์ ํ์ธํ์ค ์ ์๋ค๋ฉด frida-tools๋ฅผ ์ค์นํด์ฃผ์ ์ผ ํฉ๋๋ค.
Frida ์ธ์ธ์คํจ ๋ฐ ๋ฒ์ ์ง์
์ฐธ๊ณ ๋ก ์์ ์ frida ๋ฒ์ ์ด ๋ง์ง ์์ uninstall ํ ๋ค์ ์ค์นํ๋ ค๊ณ ํ๋ค๋ฉด dependency ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ ๊ฒฝ์ฐ๊ฐ ์์ผ๋ uninstall ํ์๋ ์๋ก์ด ํฐ๋ฏธ๋์ ์ด์ด์ ์งํํ์๋ ๊ฑธ ์ถ์ฒ ๋๋ฆฝ๋๋ค. ๋ง์ง๋ง์ผ๋ก "objection"์ ์ฌ์ฉํ์ ๋ค๋ฉด ์ค์น ์ ์๋ฌ๊ฐ ๋ฐ์๋ ์ ์์ผ๋ ํ๋ฆฌ๋ค ๋จผ์ ํ๊ฒฝ์ ๊ตฌ์ถ ํ์ ํ ์ค์นํด๋ณด์๊ธฐ ๋ฐ๋๋๋ค.
์ค์น๋ pip ํจํค์ง๋ค ํ์ธ
pip freeze
์ค์น๋ Frida ์ญ์
pip uninstall frida-tools==14.1.3
or
pip uninstall frida-tools
iOS ๊ธฐ๋ฐ ํ๊ฒฝ๊ตฌ์ถ
ํ๋จ์ ์ฃผ์์์ ํ๋ฆฌ๋ค ์๋ฒ๋ฅผ ๋ค์ด๋ก๋ ํ ๋ถ์ํ๊ณ ์ ํ๋ ๋๋ฐ์ด์ค์ ๋ฃ์ด์ค์ผ ๋ฉ๋๋ค. ์ฌ๊ธฐ์ ์ค์ํ ์ ์ ๋ก์ปฌ PC์ ๊ตฌ์ถ๋ ํ๋ฆฌ๋ค ํจํค์ง์ ๋์ผํ ๋ฒ์ ์ ์๋ฒ๋ฅผ ์ค์นํด์ฃผ์ ์ผ์ง ๋์ค์ ์๋ฌ๊ฐ ๋ฐ์ํ์ง ์์ต๋๋ค.
https://github.com/frida/frida/releases
์ ๋ ์์ดํฐ SE์ ํ๋ฆฌ๋ค ์๋ฒ๋ฅผ ๊ตฌ์ถํ ๊ฒ์ด๊ธฐ์ frida-server-14.1.3-ios-arm64.xz๋ฅผ ๋ค์ด๋ก๋ํ์ต๋๋ค.
๋ค์ด๋ก๋ํ ํ๋ฆฌ์๋ฒ ์์ถํ์ผ์ ํด์ ํ ์ด๋ฆ์ ์๋ณํ๊ธฐ ์ฝ๊ฒ "frida-server"๋ก ๋ณ๊ฒฝํ์ต๋๋ค.
3 uTools ๋๊ตฌ๋ฅผ ์คํ ํ ๋จ๋ง๊ธฐ์ ์ฐ๊ฒฐํ๊ณ /usr/sbin/ ๋๋ ํ ๋ฆฌ์ frida-serverํ์ผ์ ๋ฃ์ด์ฃผ์๋ฉด ๋ฉ๋๋ค.
cd /usr/sbin/
chmod 777 frida-server #๋ชจ๋์๊ฒ ์ฝ๊ธฐ, ์ฐ๊ธฐ, ์คํ ๊ถํ ๋ถ์ฌ
./frida-server & #ํ๋ฆฌ๋ค ์๋ฒ๊ฐ ๋ฐฑ๊ทธ๋ผ์ด๋ ํํ๋ก ์คํ๋๊ธฐ
์ด์ ๊ถํ์ ์์ ํด์ฃผ์ ์ผ ๋ฉ๋๋ค. /usr/sbin/ ๊ฒฝ๋ก๋ก ์ฌ๋ผ๊ฐ firda-server์ ๋ชจ๋ ๊ถํ์ ์์ ํด์ฃผ์๊ณ ๋ฐฑ๊ทธ๋ผ์ด๋๋ก ์คํ๋๋๋ก ํด์ฃผ์๋ฉด ๋ฉ๋๋ค.
ps -ef |grep frida-server #ํ๋ฆฌ๋ค ์๋ฒ๊ฐ ์คํ ์ค์ธ์ง ํ์ธ
ํ๋ฆฌ๋ค ์๋ฒ๊ฐ ์ ์์ ์ผ๋ก ๊ตฌ๋๋๋์ง ํ์ธํ๊ธฐ ์ํด ํ์ฌ์ ํ๋ก์ธ์ค ์ํ ์ ๋ณด๋ฅผ ํ์ธํด๋ณด๋ฉด ์ ์์ ์ผ๋ก ๊ตฌ๋๋๊ณ ์์์ ํ์ธํ ์ ์์ต๋๋ค. grep ๋ช ๋ น์ ์ฌ์ฉํ๋ฉด ์ข ๋ ๋น ๋ฅด๊ฒ ์ฐพ์ ์ ์์ต๋๋ค.
frida-ps -U
-U: ์ฐ๊ฒฐ๋ USB ์ฅ์น๋ฅผ ํ์ธํ์ฌ ๋๋ฐ์ด์ค๋ฅผ ์ธ์ํ๊ฒ ๋ค๋ ์๋ฏธ
Android ๊ธฐ๋ฐ ํ๊ฒฝ๊ตฌ์ถ
ํ๋ฆฌ๋ค ์๋ฒ ๋ฒ์ ์ด ์์ ์กฐ๊ธ ์์ดํ ์๋ ์์ต๋๋ค. ์ค์น ์ PCํ๊ฒฝ์ ๊ตฌ์ถ๋ frida ๋ฒ์ ๋ณด๋ค ๋ฎ์ง๋ง ์์ผ๋ฉด ์คํ์ด ๋์๊ธฐ์ ์๋๋ก์ด๋๋ ์์ ๋ฒ์ ์ ์ค์นํ์ต๋๋ค.
์์ถํด์ฃผ์๋ฉด ์๋๋ก์ด๋์ ์ค์น๋ ํ์ผ์ด ๋ํ๋ฉ๋๋ค. ์ ๋ Nox(๊ฐ์ ๋๋ฐ์ด์ค ํ๊ฒฝ)์ ํ๋ฆฌ๋ค ์๋ฒ๋ฅผ ๊ตฌ์ถํ์ฌ PC์ ํต์ ํ๋๋ก ํด์ฃผ๊ฒ ์ต๋๋ค.
nox_adb push <Firda ๊ฒฝ๋ก> <์ค์นํ ๊ฒฝ๋ก>
or
adb push <Frida ๊ฒฝ๋ก> <์ค์นํ ๊ฒฝ๋ก>
adb push "su -c 'chmod 777 /data/local/tmp;'" <Frida ๊ฒฝ๋ก> <์ค์นํ ๊ฒฝ๋ก>
nox_adb push ๋ช ๋ น์ ํตํด pc์์ ์์ถ ํด์ ํ frida-server๋ฅผ ์ฝ์ ํ์ฌ ์ค์น์์ผ์ฃผ์๋ฉด ๋ฉ๋๋ค.
nox_adb shell
cd /data/local/tmp/ ๊ฒฝ๋ก์ frida-server ์กด์ฌ ์ ๋ฌด ํ์ธ
chmod 777 frida-serverํ์ผ
์ค์น๋ ๊ฒฝ๋ก๋ก ๋์ด๊ฐ ๋ณด์๋ฉด ์คํ ๊ถํ์ด ๋น ์ ธ์์ผ๋ ๊ถํ์ ์ถ๊ฐํด์ฃผ์ ์ผ ๋ฉ๋๋ค.
๊ถํ์ด ์์ ๋ ๊ฒ์ ํ์ธ
./frida-serverํ์ผ &
๋ก์ปฌ PC์ ๋์๋น์ค(Nox) ์ํธ ๊ฐ์ ํต์ ์ด ๊ฐ๋ฅํ์ง ํ์ธํ๊ธฐ ์ํด ์ฐ์ ๋ฐฑ๊ทธ๋ผ์ด๋ ๋ชจ๋๋ก ์คํํ๊ฒ ์ต๋๋ค.
์ด์ ๋ก์ปฌ PC์์ ํ๋ก์ธ์ค ์ํ ์ ๋ณด๋ฅผ ํ์ธํ ์ ์๋ ๋ช ๋ น์ด๋ฅผ ์ ๋ ฅํด๋ณด๋ฉด pc์ ์ฐ๊ฒฐ๋ ๋๋ฐ์ด์ค ๋ด๋ถ์ ์ฑ ๋ฆฌ์คํธ๋ค์ด ๋ํ๋ฉ๋๋ค.
ํ๋จ์ ๋ฆฌ์คํธ๋ค์ด ๋ํ๋๋ฉด ์ด์ ์ถ๊ฐ์ ์ผ๋ก ํ์ด์ฌ ์ฝ๋๋ฅผ ๋ค์ด๋ก๋ํ์ฌ ๋ถ์์์ ์ ์ํํด์ฃผ์๋ฉด ๋ฉ๋๋ค.
๊ฐํน ๊ฐ๋ค๊ฐ ์์ ๊ฐ์ ์๋ฌ๊ฐ ๋ฐ์ํ๋ ๊ฒฝ์ฐ๊ฐ ์กด์ฌํ๋๋ฐ ์ด๊ฑฐ๋ 32Bit ๋๋ 64Bit๊ฐ ๋ง์ง ์์์ ๊ทธ๋ ์ต๋๋ค.
์ ๊ฐ์ ์๋๋ก์ด๋ ํ๊ฒฝ์ x86์ ๋๋ค.
x86 ํ์์ผ๋ก ๋ค์ด๋ก๋ ํ ๊ถํ ์กฐ์ ํ์ฌ ์คํ์์ผ์ฃผ๋ฉด ์ด์ ๊ณผ ๊ฐ์ ์๋ฌ ๋ฉ์์ง๋ ์ฌ๋ผ์ง๊ฒ ๋ฉ๋๋ค. ๊ธฐ๋ณธ์ ์ธ ๊ฑฐ์ง๋ง ์๊ทผ ์ด ๋ถ๋ถ์ ๋์ณ ์๊ฐ์ ์๋ชจํ๋ ๊ฒฝ์ฐ๊ฐ ์ข ์ข ๋ฐ์ํฉ๋๋ค.
'MOBILE' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[iOS]Jailbreak ํ์ง ์ฐํ(Frida) (0) | 2021.01.24 |
---|---|
[iOS] Keychain Dumper (0) | 2021.01.20 |
[iOS] ํ์ฅ ํ๊ฒฝ์์ iPA ์ค์น (0) | 2020.12.23 |
ํ๋ฆฌ๋ค(Frida) Memory Dump (0) | 2020.12.22 |
IOS 14.x ํ์ฅ(Jailbreak) (0) | 2020.12.19 |