
κ°μ iOS μ±μ μ§λ¨μ νκΈ° μν΄μ λ³λμ iPA νμΌμ μ λ¬λ°μ λΆμμ νκ±°λ κ·Έλ μ§ λͺ»ν κ²½μ° μλΉμ€μ λ±λ‘λμ΄ μλ μ± μ€ν μ΄μμ μ§μ λ€μ΄λ‘λνμ¬ μ§νν΄μΌ λλ κ²½μ°κ° μμ΅λλ€. μ§μ μ λ¬λ°μΌλ©΄ λ¬Έμ κ° μμ§λ§ μ± μ€ν μμ λ΄λ €λ°μ κ²½μ°μλ μ± λ΄λΆμ μ½λ λ° λ°μ΄ν°λ₯Ό 보νΈνκΈ° μν "FairPlay Code" μνΈνκ° μ μ©λμ΄ μλλ° μνΈνλ λ°μ΄λ리 νμΌμ 컀λμ "Match-O"λ‘λμ μν΄ λ°νμ μ€μ ν΄λ μ΄ λ©λλ€. κ²°λ‘ μ μΌλ‘ μ± μ€ν μμ λ°μ μ±μ 리λ²μ± κ³Όμ μ κ±°μΉκΈ° μν΄μ μ¬μ μ 볡νΈν μμ μ μ§νν΄μΌ λλ€λ κ²μ λλ€. otool -l Binaryname | grep -A4 LC_ENCRYPTION_INFO otoolμ ν΅ν΄ μ±μ FairPlay DRM μ¬λΆλ₯Ό νμΈν΄λ³΄λ©΄ "cyptid..

κ°μ iOSμμλ μ€μΉλ μ± κ°μ μ¬μ©μμ νΈμμ±μ μν "곡μ ν΄λ¦½λ³΄λ"κ° μμ΅λλ€. μ€ν μ€μΈ μ±μμ μΌλΆ ν μ€νΈλ₯Ό "볡μ¬" λλ "μλΌλ΄κΈ°"μ -> pasteboard λ²νΌμ μ μ₯λλ©° μ΄λ λ€λ₯Έ μ±μμ μ¬μ©νκΈ° μν΄ λ°μ΄ν°λ₯Ό κ°μ Έμ¬ μ μκΈ° λλ¬Έμ μ‘°μ¬ν΄μΌ λ νμκ° μμ΅λλ€. μλνλ©΄ μ± λ΄λΆμ λ¨μ μ μ₯λλ κ²μ΄ μλ λ¨λ§ μ₯μΉ λ΄λΆμ λ²νΌ ννλ‘ κΈ°λ‘λκΈ°μ λ€λ₯Έ μ±μ ν΅ν΄ μ΄ κ°μ νΈμΆνμ¬ μ μΆν κ°λ₯μ±μ΄ μκΈ° λλ¬Έμ λλ€. μλ‘ κ°μ 곡μ ν μ μλ ν΄λ¦½λ³΄λλ₯Ό μ νμμλ PasteboardλΌκ³ λ λΆλ¦ λλ€. μ¬μ©μ κ΄μ μμ 보μλ©΄ μ΄ κΈ°λ₯μ λ§€μ° νΈλ¦¬νκ³ νμμ μΈ μν λ‘ μ리 μ‘μ μμ΅λλ€. λ§μΉ κΈ΄ λ°μ΄ν° ννλ₯Ό κ°μ§λ μ°λ½μ², μ£Όμ, μΉ΄λλ²νΈ λ±μ μ¬μ©νκΈ° μν΄μ λ³΄ν΅ λ³΅μ¬ λ° λΆμ¬ λ£κΈ°λ₯Ό ..

What Functions? iOS μ±μ μ§λ¨νλ€ λ³΄λ©΄ νμ₯μ νμ§νλ νΉμ λ²μ μ΄ μμ μλ μκ³ μ΄λ€ ν¨μλ₯Ό ν΅ν΄ λλ°μ΄μ€ λ΄λΆλ₯Ό κ²μ¬νλμ§ μ‘°κΈμ© λ€λ¦ λλ€. κ·Έμ€μμ λνμ μΌλ‘ NSFileManager ν΄λμ€μ "fileExistsAtpath:"λ₯Ό ν΅ν΄ νμ¬ μ€νλ λλ°μ΄μ€ λ΄λΆμ νμ₯κ³Ό κ΄λ ¨λ λλ ν 리 λλ νμΌμ΄ μ‘΄μ¬νλμ§ μ²΄ν¬ ν Boolean λ°νμ μ§ννλ λ°©λ²κ³Ό UIApplication ν΄λμ€μ "canOpenURL:" ν¨μλ₯Ό ν΅ν΄ νμ₯κ³Ό κ΄λ ¨λ μ±μ΄ μ‘΄μ¬νλμ§ URL Scheme νΈμΆνλ 2κ°μ§ λ°©μμ΄ μ‘΄μ¬ν©λλ€. Example μ½λ NSString *filePath = @"/Applications/Cydia.app"; if ([[NSFileManager defaultManager] f..

κ°μ μ± μ§λ¨μ νμλ λΆλ€μ΄λΌλ©΄ λνμ μΌλ‘ Frida, Drozer λ± μ μ¬μ©νμλ©΄μ λμ , μ μ μ§λ¨μ νμμ§λ§ Objectionμ΄λΌλ ν΄μ μ¬μ©νμλ©΄ λͺ κ°μ§ λꡬλ€κ³Ό μ‘°ν©νμ¬ λ€μν μλλ₯Ό ν μ μμ΅λλ€. Objectionμ Run-Time Exploration μ¦ λ°νμμ μ‘°μνμ¬ κ³΅κ²©μκ° μνλ νμλ₯Ό μ±κ³΅μ μΌλ‘ ν μ μλλ‘ νλ‘μΈμ€μ μ€μκ°μΌλ‘ μ£Όμ νμ¬ μ¬μ©νλ©° Frida κΈ°λ°μΌλ‘ λμνκΈ° λλ¬Έμ Python3 νκ²½μμ frida νκ²½μ μ¬μ μ ꡬμΆν΄μ£Όμκ³ pip installμ ν΅ν΄ objectionμ μ€μΉν΄μΌ λ©λλ€. *νλ¦¬λ€ νκ²½ κ΅¬μΆ guleum-zone.tistory.com/137 ν리λ€(Frida) νκ²½ κ΅¬μΆ κ°μ Fridaλ Oleκ° κ°λ°ν DBI(Dynamic Binary..

κ°μ Mobile OWASP Top 10 μ€ μμ§λ λμ μμκΆμ μ리 μ‘κ³ μλ μ·¨μ½μ μ€ νλμ λλ€. μΌλ°μ μΌλ‘ κ°λ°μλ€μ΄ μ±μ κ°λ° ꡬννλ λ¨κ³μμ ν΄λΌμ΄μΈνΈ μΈ‘μ μ μ₯λλ λ°μ΄ν°λ ν μ¬μ©μλ€μ΄ μ½κ² μ‘μΈμ€ νμ§ λͺ»νλλ‘ μ νμ νμ§λ§ μλλ°μ€ νκ²½μΌμ§λΌλ 루ν λλ νμ₯μ ν΅ν΄ λμ κΆνμ νλνκ² λκ³ λ³΄νΈ κΈ°λ₯μ μ½κ² μ°ννμ¬ μ‘μΈμ€κ° κ°λ₯ν΄μ§λλ€. λ³΄ν΅ μ μ± μ±μ΄λ μ μμ μΈ μ¬μ©μκ° λΆμ€λ λ¨λ§μ λμμΌλ‘ κ°μΈμ 보λ₯Ό νλν κ°λ₯μ±μ΄ μ‘΄μ¬ν©λλ€. 1.log file 2.Plist file 3.androidmanifest.xml / SharedPreferecnes.xml 4.SQLite databases 5.Binary data stores 6.SD Card 7.Cloud synced μμ ..

κ°μ μλλ‘μ΄λμ Content Providerλ "μ½ν μΈ μ 곡μ "λΌλ μλ―Έλ₯Ό κ°μ§κ³ μμΌλ©° μ ν리μΌμ΄μ μ μ€μ μ μ₯μ κ°μ μν μ νλ 곡κ°μ λ€λ₯Έ μ±μ΄ μ κ·Όν μ μλλ‘ λμμ£Όλ 4λ μ»΄ν¬λνΈ μ€ νλμ λλ€. μ£Όλ‘ νμΌ μμ€ν μ΄λ SQLite λ°μ΄ν°λ² μ΄μ€, Web λ±μ ν΅ν΄μ κ΄λ¦¬νλ©° μ½ν μΈ νλ‘λ°μ΄λλ₯Ό ν΅ν΄ λ€λ₯Έ μ ν리μΌμ΄μ μ΄ μ μ₯λ λ°μ΄ν°μ μ κ·Όμ΄ κ°λ₯ν©λλ€. μ΄λ¬ν μ± κ³Ό μ± μ¬μ΄μ λ°μ΄ν° μ κ·Όμ κ΄λ¦¬νκ³ ν΅μ νκΈ° μν΄ "Content Resolver"λΌλ μ€κ°μ μν μ΄ μ‘΄μ¬νλλ° μ΄λ μ½ν μΈ μ 곡μμ μ£ΌμμΈ μ¦ μ΄λνκ³ μ νλ URIκ° λ±λ‘λμ΄ μμ΄μΌ λ©λλ€. *uri νν -> content://user_dictionary/test λ± Content Providerλ μ»΄ν¬λνΈ μ€ μΌλΆμ΄κΈ° ..

κ°μ μλλ‘μ΄λμ Broadcast Receiverλ "λ°©μ‘ μμ μ"λΌλ μλ―Έλ₯Ό κ°μ§κ³ μμΌλ©° μ ν리μΌμ΄μ μ 4λ κ΅¬μ± λ¨μμ€ νλλ‘ μΈν νΈ(Intent)λΌλ μΌμ’ μ λ©μμ§ κ°μ²΄λ₯Ό μ¬μ©νμ¬ μλλ‘μ΄λμ μ¬μ©μ κ°μ μνΈμμ©μ ν©λλ€. μ¬κΈ°μ Broadcast Receiverλ μλλ‘μ΄λμμ μ‘΄μ¬νλ μ΄λ²€νΈλ€μ΄ λ°μνλ©΄ κ° κ°μ²΄λ€λ‘ μ μ ν λΈλ‘λμΊμ€νΈ λ©μμ§λ₯Ό 보λ΄κ² λλλ° μ΄λ μ νΈλ₯Ό λ°μ μ¬μ μ μ μν΄λμ μμ μ μνν΄μ£Όλ μν μ ν©λλ€. μ¬μ μ μ μ ν΄λμ μμ μ΄λ?? λ°°ν°λ¦¬ μν μλ¦Ό(λ°°ν°λ¦¬ λΆμ‘±/μΆ©λΆ) λ©μμ§ μ‘/μμ (λ©μμ§κ° μ μ‘/μ€ν¨λμμ΅λλ€) μΈμ¦μ½λ μ λ ₯ μ¬μ§ μΊ‘μ²(μ¬μ§μ΄ μ μ₯λμμ΅λλ€) λ§μ½ λ³λμ κΆνμ΄ μλ μ¦ μμ νμ§ μμ 리μλ² μ€μ μ ν΄λ κ²½μ° μ¬μ©μκ° λ°λ μ μμ μΈ μλ¦Όμ μ€κ°..