أصدرت شركة الأمن السيبراني Kaspersky تقريرًا عامًا في يونيو من هذا العام يفيد بأن أجهزة iPhone التي يستخدمها بعض موظفي الشركة قد تعرضت للاختراق. استخدم المهاجمون العديد من نقاط الضعف المتطورة للغاية التي لا تتطلب نقرًا صفريًا لإصابة أجهزة iPhone وتحقيق مراقبة مستمرة دون الحاجة إلى أي تفاعل من الضحية. تم تسمية هذه الحادثة باسم IOSTriangulation بواسطة Kaspersky. وبعد إبلاغ شركة Apple بالثغرات الأمنية ذات الصلة، أصدرت Apple تحديثات متعددة لإصلاح الثغرات الأمنية في أواخر يونيو.

ومع ذلك، لم يتم الإعلان عن تفاصيل نقاط الضعف ذات الصلة في ذلك الوقت. بعد كل شيء، ترقيات iPhone تستغرق وقتا طويلا. وبشكل عام، سيؤجل الباحثون نشر تفاصيل الثغرات الأمنية لمنع المهاجمين من اغتنام الفرصة لاستغلال الثغرات الأمنية بينما لم يقم بعض المستخدمين بالترقية بعد.

لقد مر نصف عام منذ أن تم إصدار الثغرة الأمنية. في مؤتمر Chaos Communication الأخير، أصدر باحثون من فريق Kaspersky تقريرًا مفصلاً وتفاصيل فنية لمشاركتها مع باحثين أمنيين آخرين.

وقالت كاسبرسكي إن ثغرة iMessage Zero Click التي استخرجتها شركة Pegasus التابعة لشركة NSO Group الإسرائيلية لتطوير برامج التجسس التجارية، تُوصف بأنها واحدة من أكثر الثغرة تعقيدًا من الناحية الفنية، ويبدو أن الهجوم التثليث على نفس المستوى المخيف.

فيما يلي سلسلة الهجمات الكاملة التي أعلنت عنها Kaspersky، بما في ذلك أربع ثغرات أمنية تستخدم للوصول إلى الجذر في جهاز الضحية:

1. يرسل المهاجم مرفق iMessage ضارًا إلى المستخدم المستهدف. عندما يتلقى جهاز iPhone الخاص بالضحية الرسالة، لن يقوم iMessage بإرسال أي تذكير وسيقوم بمعالجة المرفق تلقائيًا؛

2. يستغل هذا المرفق الضار الثغرة الأمنية غير الموثقة لتنفيذ التعليمات البرمجية عن بُعد CVE-2023-41990 في توجيه خط ADJUSTTrueType الفريد من نوعه من Apple؛

3. تستخدم التعليمات البرمجية الضارة برمجة موجهة للإرجاع/القفز ومراحل متعددة مكتوبة بلغة الاستعلام NSExpression/NSPredicate، ثم تستخدم بيئة مكتبة JavaScriptCore لتنفيذ تصعيد الامتيازات؛

4. تم حجب ثغرة JavaScript التي استغلها المهاجم، مما أدى إلى عدم إمكانية قراءة التعليمات البرمجية. ومع ذلك، وجد الباحثون أن المهاجم استخدم ما يقرب من 11000 سطر من التعليمات البرمجية، بشكل أساسي لعمليات JavaScriptCore وتحليل الذاكرة؛

5. يستخدم المهاجم وظيفة تصحيح أخطاء JavaScriptCore DollarVM ($vm) لاكتساب القدرة على معالجة ذاكرة JavaScriptCore من البرامج النصية وتنفيذ واجهات برمجة التطبيقات الأصلية؛

6. من أجل دعم أجهزة iPhone القديمة والجديدة، أنشأ المهاجم أيضًا وظيفة تجاوز تتضمن رمز مصادقة المؤشر، والذي يمكن استخدامه على أحدث أجهزة iPhone؛

7. يستغل المهاجمون ثغرة Integer overflow CVE-2023-32434 في نظام تعيين الذاكرة XNU للحصول على وصول للقراءة/الكتابة على مستوى المستخدم إلى الذاكرة الفعلية للجهاز بالكامل؛

8. يستخدم المهاجمون سجلات الإدخال/الإخراج المعينة للذاكرة لتجاوز طبقة حماية الصفحة. تم تخفيف هذه المشكلة من خلال CVE-2023-38606؛

9. عند استغلال جميع الثغرات الأمنية، يمكن لثغرة جافا سكريبت أن تفعل أي شيء ضد الجهاز، بما في ذلك تشغيل برامج التجسس، لكن المهاجم يختار ما يلي:

أ. ابدأ عملية IMAgent وقم بإدخال حمولة لمسح آثار عمليات الاستغلال في الجهاز؛

ب. تشغيل عملية Safari في الوضع غير المرئي وإعادة توجيهها إلى صفحة الويب المستخدمة في مرحلة الهجوم التالية؛

10. تحتوي صفحة الويب على برنامج نصي للتحقق من الضحية. إذا نجح الاكتشاف، فإنه ينتقل إلى المرحلة التالية: استغلال Safari؛

11. يستغل Safari CVE-2023-32435 لتنفيذ كود القشرة؛

12. يقوم كود القشرة بتنفيذ ثغرة أمنية أخرى في kernel في شكل ملف هدف Mach. ويستخدم نفس نقاط الضعف: CVE-2023-32434 وCVE-2023-38606. وهذا يختلف تمامًا عن ثغرة kernel المكتوبة بلغة JavaScript. ومع ذلك، يتم استخدام الهدف أيضًا في عمليات تحليل الذاكرة، لكن معظم الوظائف لا يستخدمها المهاجم في المرحلة اللاحقة؛

13. يكتسب البرنامج المستغل امتيازات الجذر وينتقل إلى مراحل أخرى، بما في ذلك تحميل برامج التجسس، وما إلى ذلك.

وقالت كاسبرسكي إن المهاجمين قاموا بإجراء هندسة عكسية لكل جانب من جوانب سلسلة الهجوم تقريبًا، مما يوضح أن أهداف المهاجمين ليست أغراضًا عامة، أي أن الغرض الرئيسي قد يكون في الواقع أغراضًا تجسسية وسياسية.

يخطط فريق Kaspersky لنشر المزيد من المقالات حول هجمات التثليث في عام 2024. ويجب على المستخدمين المهتمين بهذه المقالة قراءة تقرير Kaspersky الأصلي، والذي يتضمن تحليلًا لكل ثغرة أمنية: https://securelist.com/operation-triangulation-the-last-hardware-mystery/111669/