iOS Extracting Entitlements From Compiled Application
Last updated
Last updated
Learn & practice AWS Hacking:HackTricks Training AWS Red Team Expert (ARTE) Learn & practice GCP Hacking: HackTricks Training GCP Red Team Expert (GRTE)
ํ์ด์ง ์์ฝ https://mas.owasp.org/MASTG/tests/ios/MASVS-PLATFORM/MASTG-TEST-0069/#review-entitlements-embedded-in-the-compiled-app-binary
์ฑ์ IPA ๋๋ ํ์ฅ๋ ์ฅ์น์ ์ค์น๋ ์ฑ์ ๋ค๋ฃฐ ๋, .entitlements
ํ์ผ์ด๋ embedded.mobileprovision
ํ์ผ์ ์ง์ ์ฐพ๋ ๊ฒ์ ๋ถ๊ฐ๋ฅํ ์ ์์ต๋๋ค. ๊ทธ๋ฌ๋, ์ฑ ๋ฐ์ด๋๋ฆฌ์์ ๊ถํ ์์ฑ ๋ชฉ๋ก์ ์ถ์ถํ ์ ์์ผ๋ฉฐ, ์ด๋ "iOS Basic Security Testing" ์ฅ์ ์ ์ฐจ๋ฅผ ๋ฐ๋ฆ
๋๋ค. ํนํ "Acquiring the App Binary" ์น์
์ ์ฐธ์กฐํ์ญ์์ค.
์ํธํ๋ ๋ฐ์ด๋๋ฆฌ์์๋ ์ด๋ฌํ ํ์ผ์ ์ถ์ถํ๊ธฐ ์ํด ํน์ ๋จ๊ณ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๋จ๊ณ๊ฐ ์คํจํ ๊ฒฝ์ฐ, Clutch(ํธํ๋๋ iOS ๋ฒ์ ์ผ ๊ฒฝ์ฐ), frida-ios-dump ๋๋ ์ ์ฌํ ์ ํธ๋ฆฌํฐ๋ฅผ ์ฌ์ฉํ์ฌ ์ฑ์ ๋ณตํธํํ๊ณ ์ถ์ถํด์ผ ํ ์ ์์ต๋๋ค.
์ฑ ๋ฐ์ด๋๋ฆฌ์ ์ ๊ทผํ ์ ์๋ ์ปดํจํฐ์์ binwalk๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋ XML ํ์ผ์ ์ถ์ถํ ์ ์์ต๋๋ค. ์๋ ๋ช ๋ น์ด๋ ์ด๋ฅผ ์ํํ๋ ๋ฐฉ๋ฒ์ ๋ณด์ฌ์ค๋๋ค:
๋์์ผ๋ก, radare2๋ฅผ ์ฌ์ฉํ์ฌ ์กฐ์ฉํ ๋ช ๋ น์ ์คํํ๊ณ ์ข ๋ฃํ ์ ์์ผ๋ฉฐ, "PropertyList"๋ฅผ ํฌํจํ๋ ์ฑ ๋ฐ์ด๋๋ฆฌ์ ๋ชจ๋ ๋ฌธ์์ด์ ๊ฒ์ํ ์ ์์ต๋๋ค:
๋ ๋ฐฉ๋ฒ์ธ binwalk์ radare2๋ plist
ํ์ผ์ ์ถ์ถ์ ๊ฐ๋ฅํ๊ฒ ํ๋ฉฐ, ์ฒซ ๋ฒ์งธ ๋ฐฉ๋ฒ(0x0015d2a4)์ ๊ฒํ ๋ฅผ ํตํด ํ
๋ ๊ทธ๋จ์ ์๋ณธ ๊ถํ ํ์ผ์ ์ฑ๊ณต์ ์ธ ๋ณต๊ตฌ๊ฐ ๋๋ฌ๋ฌ์ต๋๋ค.
ํ์ฅ๋ ์ฅ์น์์ ์ ๊ทผํ ์ฑ ๋ฐ์ด๋๋ฆฌ์ ๋ํด์๋ grep ๋ช
๋ น์ด์ -a, --text
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ ๋ชจ๋ ํ์ผ์ ASCII ํ
์คํธ๋ก ์ฒ๋ฆฌํ ์ ์์ต๋๋ค:
-A num, --after-context=num
ํ๋๊ทธ๋ฅผ ์กฐ์ ํ๋ฉด ๋ ๋ง์ ๋๋ ๋ ์ ์ ์ค์ ํ์ํ ์ ์์ต๋๋ค. ์ด ๋ฐฉ๋ฒ์ ์ํธํ๋ ์ฑ ๋ฐ์ด๋๋ฆฌ์๋ ์ ํจํ๋ฉฐ ์ฌ๋ฌ App Store ์ฑ์ ๋ํด ๊ฒ์ฆ๋์์ต๋๋ค. ์์ ์ธ๊ธํ ๋๊ตฌ๋ ์ ์ฌํ ๋ชฉ์ ์ ์ํด ํ์ฅ๋ iOS ์ฅ์น์์๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ฐธ๊ณ : ์ด ์์
์ ๋ํด strings
๋ช
๋ น์ด๋ฅผ ์ง์ ์ฌ์ฉํ๋ ๊ฒ์ ๊ด๋ จ ์ ๋ณด๋ฅผ ์ฐพ๋ ๋ฐ ํ๊ณ๊ฐ ์๊ธฐ ๋๋ฌธ์ ๊ถ์ฅ๋์ง ์์ต๋๋ค. ๋์ , ๋ฐ์ด๋๋ฆฌ์ ๋ํด -a
ํ๋๊ทธ์ ํจ๊ป grep์ ์ฌ์ฉํ๊ฑฐ๋ radare2(izz
)/rabin2(-zz
)๋ฅผ ํ์ฉํ๋ ๊ฒ์ด ๋ ํจ๊ณผ์ ์ธ ๊ฒฐ๊ณผ๋ฅผ ์ป๋ ๋ฐ ๋ฐ๋์งํฉ๋๋ค.