
Proof-of-Concept-Exploit für Sicherheitslücken im iOS-Bluetooth-Stack CVE-2018-4327 und CVE-2018-4330, der die Kontrolle über das ARM-PC-Register auf dem iPhone 6S über eine Verbindung mit einem bösartigen Bluetooth-Gerät ermöglicht.
POC für CVE-2018-4327 (zumindest glaube ich das, da CVE-2018-4327 und CVE-2018-4330 beide von @SparkZheng beschrieben wurden, aber es nicht sagt, welcher sich auf welchen Bug bezieht, aber da er diesen zuerst beschrieben hat, rate ich mal).
Getestet auf iPhone 6S 11.3.1
Sollte bis 11.4 funktionieren
Ermöglicht es, den PC (ARM-Version des IP-Registers) auf einen selbst gewählten Wert auf SpringBoard und einigen Diensten zu setzen.
Sie müssen den Code ausführen und dann zum BT-Menü in den Einstellungen gehen und sich mit einem Gerät verbinden. Wenn es nicht funktioniert, schalten Sie BT aus und wieder ein.
Ziemlich nervig zu exploitieren, aber es hat mir gefallen, also wollte ich einen POC erstellen und dabei lernen.
Habe den @raniXCH bluetoothdPoC-Code verwendet, um die gesamte Vorbereitung der Mach-Nachricht und deren Senden an den BT-Dienst zu handhaben und ihn an diesen POC angepasst.
Habe jtool verwendet, um die Ordinalzahl und andere Dinge zu finden.
Musste ein wenig RE betreiben, um die korrekten Nachrichtengrößen zu finden.
Danksagungen:
@SparkZheng – für seine großartige Vorlesung auf der DEFCON 26.
@raniXCH – für die exzellente HITB-Präsentation und den bluetoothdPoC.
Jonathan Levin – für das großartige Buch und jtool.
Referenzen:
http://www.newosxbook.com/tools/jtool.html – jtool, das ich verwendet habe, um die Ordinalzahl und andere Dinge zu finden.
https://www.weibo.com/ttarticle/p/show?id=2309404271293301154324 – @SparkZheng Material.
https://github.com/rani-i/bluetoothdPoC – @raniXCHs POC-Code.
https://gsec.hitb.org/materials/sg2018/D2%20-%20The%20Road%20to%20iOS%20Sandbox%20Escape%20-%20Rani%20Idan.pdf – @raniXCHs Material Teil 1.
https://blog.zimperium.com/cve-2018-4087-poc-escaping-sandbox-misleading-bluetoothd/ – @raniXCHs Material Teil 2.