Blackbox -Tool zum Deaktivieren von SSL/TLS -Zertifikatvalidierung - einschließlich Zertifikat -Pinning - in iOS- und macOS -Anwendungen. Zweite Iteration von https://github.com/isecpartners/ios-Sl-kill-sschitch.
Sobald SSL Kill Switch 2 in eine iOS- oder macOS-Anwendung geladen wurde, wird er für die Bearbeitung von SSL/TLS-Verbindungen auf niedrige Ebene verantwortlich gemacht, um die Standardzertifikatsüberprüfung des Systems sowie jede Art von benutzerdefinierter Zertifikatvalidierung (z. B. Zertifikatstab) zu überschreiben und zu deaktivieren.
Es wurde erfolgreich anhand verschiedener Anwendungen getestet, die das Zertifikatspinning einschließlich des Apple App Store implementieren. Die erste Version von SSL Kill Switch wurde bei Black Hat Vegas 2012 veröffentlicht.
Die neueste Version iOS, die als unterstützt bekannt ist, ist 14,2.
Auf iOS kann SSL Kill Switch 2 als Cydia -Subtrat -Optimierung auf einem Jailbreak -Gerät installiert werden.
Durch die Installation von SSL Kill Switch 2 kann jeder im selben Netzwerk wie das Gerät Man-in-the-Middle-Angriffe mit einer SSL- oder HTTPS-Verbindung problemlos durchführen. Dies bedeutet, dass es trivial ist, Zugriff auf E -Mails, Websites in Safari und andere Daten zu erhalten, die von einer auf dem Gerät ausgeführten App heruntergeladen wurden.
Die folgenden Abhängigkeiten sollten mit Cydia installiert werden:
Laden Sie dann das neueste vorkompilierte Paket herunter, das auf der Github-Seite von SSL Kill Switch 2 auf der Registerkarte "SSL Kill Switch 2" verfügbar ist. Kopieren Sie es in das Gerät, installieren Sie es und formen Sie das Gerät wieder: Reservieren:
dpkg -i <package>.deb
killall -HUP SpringBoard
In den Einstellungen des Geräts sollte ein neues Menü vorhanden sein, in dem Sie die Erweiterung aktivieren können. Schließlich töten und starten Sie die App, die Sie testen möchten.
Die Option kann später mit:
dpkg -r com.nablac0d3.SSLKillSwitch2
Viele Leute haben gefragt, wie man den Datenverkehr des App Store mit SSL Kill Switch abfangen soll. Ich habe hier einige Anweisungen aufgeschrieben, aber jetzt gibt es veraltet: http://nabla-c0d3.github.io/blog/2013/08/20/intercept- the-app-stores-traffic-oSiN-ISIS/
Standardmäßig wird SSL Kill Switch die Charles Proxy iOS -App stören und Sie können keinen Netzwerkverkehr damit einstellen. Um dies zu beheben, fügen Sie die Charles Proxy -App (com.xk72.charles) in die Liste der ausgeschlossenen Bundle -IDs in der SSL Kill -Switch -Konfiguration hinzu:

Der Build erfordert, dass die Theos -Suite unter http://www.iphonedevwiki.net/index.php/theos/getting_started verfügbar ist.
Erstellen Sie in SSL Kill Switch 2's Root Foler einen Symlink für Ihre Theos -Installation:
ln -s /<path_to_your_theos_folder> theos
Stellen Sie sicher, dass DPKG installiert ist. Wenn Sie Homebrew haben, verwenden Sie:
brew install dpkg
Anschließend kann das Debian -Paket von SSL Kill Switch 2 mit:
make package
SSL Kill Switch 2 kann in MacOS -Anwendungen als dynamische Bibliothek in Prozesse verwendet werden.
Auf macOS muss die SSLKILLSWITCH -Bibliothek manuell in den Prozess eingeleitet werden, in dem SSL -Pinning deaktiviert werden muss. Sobald es injiziert wurde, wird die SSL -Validierung automatisch überschrieben und deaktiviert.
Es gibt verschiedene Möglichkeiten, dies zu tun, einschließlich:
Starten Sie den Prozess mit LLDB oder in Xcode-Debug-> an den Prozess anhängen, dann innehalten Sie und laden Sie SSLKILLSWITCH mit dlopen() :
(lldb) expr (void*)dlopen("/path/to/build/SSLKillSwitch.framework/Versions/A/SSLKillSwitch", 1)
Das erwartete Ergebnis ist ein Zeiger ungleich Null:
(void *) $1 = 0x00007f92e74d10c0
Wenn Sie einen Nullzeiger erhalten, müssen Sie möglicherweise die Codesignierung und das Erstellen für die Profilerstellung aktivieren, dann die Binärdatei im Release-Ordner verwenden und möglicherweise sogar das Binärdatum in den Ordner der App kopieren. In diesem Fall hätten Sie eine Sandbox -Leseverletzung in die Konsole gesehen. Um eine neue Version des Binärs zu testen, müssen Sie die App abtöten und erneut laden.
Verwenden von dyld_insert_libraries, um sslkillswitch zu injizieren und den Prozess zu starten.
TBD
Verwenden Sie das Xcode -Projekt, um SSL Kill Switch 2 für macOS zu erstellen. Die kompilierte Bibliothek ist dann in Produkten/SSLKILLSWITCH.Framework/Versionen/A/SSLKILLSWITCH erhältlich. Dies ist die Binärdatei, die Sie in den Prozess injizieren müssen, in dem Sie das SSL -Pinning deaktivieren möchten.
MIT - siehe ./license.
Alban Diquet - @nabla_c0d3