Auditer la sécurité d'une application iOS n'est toujours pas une tâche aisée. Force est de constater que la plupart des auditeurs, amateurs de bug bounty ou autres curieux préfèrent travailler sur les applications Android malgré les récentes protections ajoutées au système d'exploitation de Google. Nous allons malgré tout essayer de présenter une méthodologie qui rend possible l'analyse orientée sécurité d'une application iOS, même sans jailbreak. Un bref rappel sera effectué pour ensuite introduire quelques outils et documentations apparues ces derniers mois.
1. Mise à jour requise
Il y a 2 ans, l'article « Auditer la sécurité d'une application iOS avec Needle » introduisait le cadriciel Needle sorti un an plus tôt (lors de Black Hat 2016 à Las Vegas). Prometteur, l'outil facilitait grandement l'analyse d'applications iOS en affranchissant l'auditeur de nombreuses tâches fastidieuses. Publié par la société MWR, l'outil n'a malheureusement pas été mis à jour depuis le départ de Marco Lancini, son créateur, de la société début 2018 [marco]. Or l'évolution régulière du système d'exploitation d'Apple oblige des mises à jour fréquentes de l'outil. Plusieurs bonnes intentions ont pourtant fait leur apparition sur le GitHub de Needle [githubneedle], mais elles ne semblent pas avoir été entendues. Il faudra donc, un jour, penser à ranger l'aiguille de MWR et trouver de nouveaux ustensiles pour venir à bout de la carapace des applications iOS. La lecture de l’article est cependant fortement recommandée...
- Accédez à tous les contenus de Connect en illimité
- Découvrez des listes de lecture et des contenus Premium
- Consultez les nouveaux articles en avant-première
[miscmag91] https://connect.ed-diamond.com/MISC/MISC-091/Auditer-la-securite-d-une-application-iOS-avec-Needle
[marco] https://twitter.com/lancinimarco/status/955206373041680385
[githubneedle] https://github.com/mwrlabs/needle/issues/212
[owasp_testing_guide] https://www.owasp.org/index.php/OWASP_Testing_Project
[mahh] http://eu.wiley.com/WileyCDA/WileyTitle/productCd-1118958500.html
[uncover] https://github.com/pwn20wndstuff/Undecimus
[chimera] https://chimera.sh/
[xnuqemu] https://worthdoingbadly.com/xnuqemu/
[iosqemu] https://alephsecurity.com/2019/06/17/xnu-qemu-arm64-1/
[miscmag92] https://connect.ed-diamond.com/MISC/MISC-092/Frida-le-couteau-suisse-de-l-analyse-dynamique-multiplateforme
[objc-method-observer] https://codeshare.frida.re/@mrmacete/objc-method-observer/
[bfdecrypt] https://github.com/BishopFox/bfdecrypt
[ipapatch] https://github.com/Naituw/IPAPatch
[resign] https://github.com/vtky/resign
[demo-cycript] https://github.com/Naituw/IPAPatch/releases/tag/1.0.1
[l3tjg] https://level3tjg.github.io/
[objection] https://github.com/sensepost/objection
[sslkillswitch2] https://github.com/nabla-c0d3/ssl-kill-switch2
[fridasslbypass] https://codeshare.frida.re/@lichao890427/ios-ssl-bypass/
[charlesproxy] https://apps.apple.com/app/charles-proxy/id1134218562
[rvi_capture] https://github.com/gh2o/rvi_capture
[impactor] http://www.cydiaimpactor.com/