
iOS के लिए CVE-2018-4330 POC
ब्रोकेनटूथ से संबंधित (नीचे लिंक किया गया)।
ब्रोकेनटूथ के विपरीत, टूथफेयरी को ब्लूटूथ मेनू पर बटन दबाने की आवश्यकता नहीं होती है।
दोनों CVE @SparkZheng द्वारा उजागर किए गए थे लेकिन बिना POC के, इसलिए मैंने सीखने के अनुभव के लिए एक POC बनाने का निर्णय लिया।
कोड सही नहीं है लेकिन यह काम करता है।
iPhone 6S 11.3.1 पर परीक्षण किया गया।
11.4 तक काम करना चाहिए।
यह आपको bluetoothd और कुछ अन्य सेवाओं पर PC (IP रजिस्टर के लिए ARM का संस्करण) को आपकी पसंद के मान पर सेट करने देता है।
@raniXCH के bluetoothdPoC कोड का उपयोग किया गया ताकि Mach संदेश की तैयारी और उसे BT सेवा में भेजने को संभाला जा सके और इसे इस POC में फिट करने के लिए अनुकूलित किया गया।
ऑर्डिनल और अन्य चीज़ें खोजने के लिए jtool का उपयोग किया गया।
सही संदेश आकार खोजने के लिए थोड़ा RE करना पड़ा।
क्रेडिट:
@SparkZheng - DEFCON 26 पर उनके शानदार व्याख्यान के लिए।
@raniXCH - उत्कृष्ट HITB प्रस्तुति और bluetoothdPoC के लिए।
Jonathan Levin - महान पुस्तक और jtool के लिए।
संदर्भ:
http://www.newosxbook.com/tools/jtool.html - jtool जिसका उपयोग मैंने ऑर्डिनल और अन्य चीज़ें खोजने के लिए किया।
https://www.weibo.com/ttarticle/p/show?id=2309404271293301154324 - @SparkZheng सामग्री।
https://github.com/rani-i/bluetoothdPoC - @raniXCH का POC कोड।
https://gsec.hitb.org/materials/sg2018/D2%20-%20The%20Road%20to%20iOS%20Sandbox%20Escape%20-%20Rani%20Idan.pdf - @raniXCH की सामग्री भाग 1।
https://blog.zimperium.com/cve-2018-4087-poc-escaping-sandbox-misleading-bluetoothd/ - @raniXCH की सामग्री भाग 2।
https://github.com/omerporze/brokentooth - CVE-2018-4327 के लिए मेरा POC।