
The iOS Security Testing Framework

Needle ist ein Open-Source-Modular-Framework, das den Prozess der Sicherheitsbewertung von iOS-Apps optimiert.
HINWEIS: Dieses Tool wurde stillgelegt und wird nicht mehr gewartet. Wir lassen das ursprüngliche Projekt zu Archivierungszwecken online.
Needle wurde ursprünglich für iOS 9 und iOS 10 entwickelt. Seitdem wurde Frida veröffentlicht und ist zum De-facto-Tool für mobile Sicherheitsbewertungen geworden. Einige gängige Frida-Mobilsicherheitsskripte wurden später in Needle implementiert, da einige dieser Skripte besser funktionierten oder einige Probleme behoben, die in Needles benutzerdefinierten Tools vorhanden waren.
Mit der Veröffentlichung von iOS 11 kamen zusätzliche Sicherheitsmaßnahmen hinzu, die gut für den Verbraucher, aber schlecht für Needle waren. Diese Verbesserungen machten die Funktionalität von Needle im Wesentlichen zunichte, sodass F-Secure vor zwei Optionen stand:
F-Secure entschied sich für die letztgenannte Option, da einige unserer Berater bereits begonnen hatten, ein anderes Tool zu verwenden und dazu beizutragen, als Needles Schicksal diskutiert wurde. Dieses Drittanbieter-Tool heißt Objection und ist hier zu finden:
https://github.com/sensepost/objection
Needle kann weiterhin auf Geräten mit iOS 10 und niedriger verwendet werden. Wenn das Gerät iOS 11 oder höher ausführt, empfiehlt F-Secure die Verwendung von Objection.
Die Sicherheitsbewertung einer iOS-Anwendung erfordert in der Regel eine Vielzahl von Tools, die jeweils für einen bestimmten Zweck entwickelt wurden und alle unterschiedliche Betriebsmodi und Syntax haben. Das Android-Ökosystem verfügt über Tools wie "drozer", die dieses Problem gelöst haben und für die meisten Anwendungsfälle als 'One-Stop-Shop' dienen sollen. iOS hat jedoch kein Äquivalent.
Needle ist das iOS-Sicherheitstest-Framework von MWR, das im August 2016 auf der Black Hat USA vorgestellt wurde. Es ist ein Open-Source-Modular-Framework, das den gesamten Prozess der Sicherheitsbewertung von iOS-Anwendungen optimieren soll und als zentraler Anlaufpunkt dient. Needle soll nicht nur für Sicherheitsexperten nützlich sein, sondern auch für Entwickler, die ihren Code sichern möchten. Einige Beispiele für Testbereiche, die von Needle abgedeckt werden, sind: Datenspeicherung, Interprozesskommunikation, Netzwerkkommunikation, statische Codeanalyse, Hooking und Binärschutz. Die einzige Voraussetzung für den effektiven Einsatz von Needle ist ein jailbrokenes Gerät.
Die Veröffentlichung von Version 1.0.0 brachte eine umfassende Überarbeitung des Kerns und die Einführung eines neuen nativen Agents, der vollständig in Objective-C geschrieben ist. Der neue NeedleAgent ist eine Open-Source-iOS-App, die Needle ergänzt und es ermöglicht, Aufgaben nativ auf dem Gerät programmatisch auszuführen, wodurch die Notwendigkeit von Drittanbieter-Tools entfällt.
Needle wurde auf verschiedenen internationalen Konferenzen wie Black Hat USA/EU, OWASP AppSec und DEEPSEC präsentiert und in Workshops eingesetzt. Es wurde außerdem von ToolsWatch in die engere Auswahl für die Top Security Tools 2016 aufgenommen und ist im OWASP Mobile Testing Guide enthalten.
Needle ist Open-Source-Software, gewartet von MWR InfoSecurity.
Siehe die Installationsanleitung im Projekt-Wiki für Details.
Nutzungshinweise (sowohl für normale Benutzer als auch für Mitwirkende) finden Sie im Projekt-Wiki.
Needle wird unter einer 3-Klausel-BSD-Lizenz veröffentlicht. Siehe die Datei LICENSE für vollständige Details.
Für Neuigkeiten und Updates folgen Sie @mwrneedle auf Twitter und dem MWR Mobile Tools Blog.
Sie können gerne Issues einreichen oder uns auf Twitter kontaktieren - @mwrneedle, @lancinimarco