يحتوي هاتف OnePlus Nord 2 على ثغرة أمنية تسمح للمهاجم بالوصول غير المقيد إلى root shell. واصل القراءة لمعرفة المزيد!
لقد بدأ الكثير منا هنا في XDA-Developers في الأصل بتصفح المنتديات للمرة الأولى عندما كنا نتطلع إلى ذلك قم بتجذير أجهزتنا التي تعمل بنظام Android. في تلك الأيام، كان الأشخاص يعتمدون غالبًا على أساليب "الجذر بنقرة واحدة": التطبيقات أو البرامج النصية التي تحتوي على الحمولات التي تستهدف نقاط الضعف المعروفة لتصعيد الامتيازات في البرامج الثابتة الموجودة للحصول على الجذر وصول. مع التحسينات والتغييرات في التشفير والأذونات والتعامل مع الخصوصية، أصبحت أجهزة Android الحديثة آمنة نسبيًا من نواقل الهجوم هذه، ولكن سيظل هناك دائمًا مجال لـ يستغل و نقاط الضعف.
ربما تكون شركة OnePlus قد عززت اسمها بين الشركات المصنعة الأصلية الرئيسية لنظام Android، لكن هواتفها كذلك ليس غريبا ل عيوب أمنية. هذه المرة، تركت الشركة ثغرة مثيرة للاهتمام (اقرأ: مثيرة للقلق) لم يتم إصلاحها على ون بلس نورد 2 منذ صدوره. وعلى الرغم من أن استغلال الثغرة يتطلب الوصول الفعلي إلى الجهاز، إلا أن المهاجم يستطيع ذلك بفعالية
خلفية
في الوقت الحاضر، عندما نتحدث عن الوصول إلى الجذر على هاتف ذكي يعمل بنظام Android، عادةً ما يفكر الناس في ذلك تصحيح صورة تمهيد المخزون باستخدام Magisk أولاً ثم وميض الصورة المصححة إلى الجهاز المستهدف بعد إلغاء قفل أداة تحميل التشغيل. وبهذه الطريقة، يمكن للمستخدم النهائي أن يكون لديه وصول خاضع للإشراف إلى الملف الثنائي "su" من خلال تطبيق المدير. زوجان من الآخرين النهج التجريبية موجودة، لكنها نادرًا ما تجمع نفس القدر من الاستخدام السائد.
لكن عندما يتعلق الأمر بمرحلة ما قبل الإنتاج، فإن السيناريو مختلف تمامًا. أثناء إعداد البرنامج الثابت لجهاز ما، يحتاج المهندسون إلى تشغيل معلمات التسجيل المختلفة، بما في ذلك الوصول إلى الجذر. حتى على أ com.userdebug يبني، يعمل Android Debug Bridge Daemon (adbd) كجذر، بحيث يمكن للمرء الحصول على امتياز الوصول إلى Shell لأغراض تصحيح الأخطاء. عندما يكون البرنامج الثابت جاهزًا للشحن، يجب إيقاف تشغيل جميع معلمات تصحيح الأخطاء هذه قبل طرحه.
ولكن ماذا يحدث إذا نسيت القيام بذلك؟ سنرى أن إصدارات OxygenOS الرسمية لجهاز OnePlus Nord 2 تأتي مع مثل هذا الخلل.
OnePlus Nord 2 – ثغرة أمنية في Root Shell
تقدم بعض الشركات المصنعة الأصلية مثل Samsung إمكانية التحميل الجانبي لحزمة التحديث في استرداد مخزونها على أجهزة البيع بالتجزئة. في هذه الحالة، adbd
يتم تشغيل الملف الثنائي بامتياز كبير أثناء التحميل الجانبي، ولكنه يغلق نفسه بمجرد انتهاء عملية التحديث. بخلاف ذلك، لا يُسمح بالوصول إلى ADB في بيئة الاسترداد التي توفرها OEM.
لم يعد OnePlus يسمح للمستخدمين بإرسال حزمة ZIP للتحديث من خلال استرداد المخزون عبر التحميل الجانبي لـ ADB. على افتراض أن كل شيء آخر قد تم تكوينه كما ينبغي، يجب أن تكون بيئة الاسترداد العادية لجهاز OnePlus آمنة من المهاجمين الذين يقدمون أي نوع من الحمولة باستخدام ADB. لسوء الحظ، لا يسير كل شيء وفقًا للخطة في حالة OnePlus Nord 2.
كما تبين، يمكن لأي شخص إنشاء غلاف تصحيح أخطاء Android مع امتياز الجذر داخل بيئة الاسترداد الخاصة بـ OnePlus Nord 2. يبدو أن أحد إعدادات تصحيح الأخطاء الهامة قد شق طريقه إلى إصدارات الإنتاج، مما أدى إلى هذا الخلل.
استغلال الخلل الموجود في هاتف OnePlus Nord 2
كل ما عليك فعله هو إعادة تشغيل OnePlus Nord 2 إلى وضع الاسترداد الخاص به. يمكن للمهاجم أن يأخذ الجهاز ويستخدم مجموعة بسيطة من أزرار الأجهزة لإجباره على الانتقال إلى وضع الاسترداد. في الواقع، ليست هناك حاجة للوصول إلى قائمة الاسترداد الفعلية، حيث يأتي القسم الضعيف قبل ذلك. يذهب الائتمان إلى عضو XDA الكبير أندرو بلس ل لافتا يعود وجود هذا الخلل إلى أكتوبر 2021.
- أثناء إيقاف تشغيل الهاتف، اضغط على زري خفض الصوت والطاقة في وقت واحد حتى تقوم بذلك شاهد شعار OnePlus مع شعار "RECOVERY MODE" الصغير في الركن الأيسر السفلي من الشاشة.
- بعد ذلك، يجب أن تشاهد شاشة اختيار اللغة. لا حاجة للمضي قدمًا، حيث يمكننا بدء الوصول إلى ADB مباشرة من هنا.
- الآن قم بتوصيل الهاتف بجهاز كمبيوتر (أو Mac) باستخدام كابل USB. في حال كنت تستخدم نظام التشغيل Windows، يمكنك رؤية واجهة تصحيح أخطاء Android USB الجديدة المنبثقة في إدارة الأجهزة. قد تحتاج أيضًا إلى تثبيت برنامج مناسب برنامج تشغيل USB للاندرويد قبل أن يتمكن Windows من التعرف على الجهاز الجديد. من ناحية أخرى، يمكن لمستخدمي Linux وmacOS استخدام
lsusb
أمر للكشف عن وجود واجهة الأجهزة الجديدة. - مع الأخذ في الاعتبار أن لديك بالفعل أحدث إصدار من بنك التنمية الآسيوي و Fastboot الأدوات المساعدة المثبتة على جهاز الكمبيوتر/جهاز Mac الخاص بك، قم بتشغيل مثيل Command Prompt/PowerShell/Terminal وقم بتنفيذ الأمر التالي:
يجب أن يدرج Nord 2 في وضع الاسترداد. وهذا أيضًا مثير للاهتمام بشكل خاص، حيث إن مطالبة ترخيص ADB القياسية ليست مطلوبة هنا. قد تحصل على خطأ "جهاز غير مصرح به"، ولكن مسح قاعدة بيانات مفتاح ADB RSA الموجودة بالكمبيوتر المضيف وإعادة تشغيل خادم ADB يجب أن يسمح لك في النهاية بالحصول على ترخيص.adb devices
- الآن إرشاد
adbd
للتشغيل كجذر:
قد يستغرق هذا الأمر وقتًا طويلاً ومن المحتمل أن تحصل على خطأ انتهاء المهلة. ومع ذلك، الآنadb root
adbd
يجب أن يعمل كجذر. - أخيرًا، تحقق من مستوى امتياز الصدفة باستخدام الأمر التالي:
adb shell whoami
مدى الخلل
إن الانتهاكات المحتملة لهذه الثغرة الأمنية مخيفة. من خلال الهجوم الناجح على OnePlus Nord 2، يمكن للمهاجم تفريغ كل قسم من الجهاز. ونتيجة لذلك، فإن قسم البيانات بالكامل - بما في ذلك الملفات المخزنة في أدلة البيانات الخاصة للتطبيقات التي لا يمكن الوصول إليها عادة - يمكن للمهاجم الوصول إليها. في حالة ظهور قسم البيانات على أنه مشفر (بسبب قيام المستخدم بتعيين رقم تعريف شخصي أو كلمة مرور)، فقد يظل التفريغ مفيدًا لتحليل الطب الشرعي.
ليس ذلك فحسب، بل يمكنك دفع الملف القابل للتنفيذ إلى /data/local/tmp
وتشغيله من هناك. هذا هو ناقل الهجوم الكلاسيكي، والذي يمكن أن يكون مفيدًا في تحميل برمجية استغلال أخرى. علاوة على ذلك، حيث يمكنك الآن الاتصال بـ setprop
كجذر لتعديل قيم الخصائص المختلفة، يمكنك تقنيًا اختطاف بعض المتغيرات المميزة الخاصة بـ OEM. أخيرًا وليس آخرًا، حتى إذا لم تكن خيارات المطور غير مقفلة، فسيطالبك الهاتف تلقائيًا بالوصول إلى تصحيح أخطاء USB بعد استدعاء ADB قيد الاسترداد وإعادة التشغيل لبيئة Android العادية، مما يعني أن نطاق الثغرة الأمنية لا يقتصر على قسم الاسترداد فقط فقط.
لاحظ أنه لا يمكنك تثبيت ملفات APK باستخدام ADB في بيئة الاسترداد نظرًا لعدم إمكانية الوصول إلى الأداة المساعدة Package Manager هناك.
كيف تتحقق مما إذا كان هاتف OnePlus Nord 2 الخاص بك متأثرًا؟ (تلميح: إنه كذلك)
كما ذكرنا سابقًا، يمكنك استغلال هذه الثغرة الأمنية في كل من الإصدار العادي والخاص من Pac-Man لجهاز OnePlus Nord 2. باختصار، إذا قمت بإدخال غلاف جذر (ستعرف متى يتغير رمز الصدفة من $
ل #
)، فستعرف أن الخلل موجود.
لقد نجحنا في الحصول على وصول جذري لـ أحدث البرامج الثابتة الهندية والأوروبية العامة للجهاز OxygenOSمما يعني كل وحدة OnePlus Nord 2 الموجودة معرضة للخطر في وقت كتابة هذا المقال.
ماذا بعد؟
وسنتابع هذا الأمر حال توفر المزيد من المعلومات. قدم OnePlus البيان التالي حول هذه المشكلة:
نحن نتعامل مع الخصوصية والأمن على محمل الجد. نحن نعطي الأولوية لهذا الأمر وسنشارك التحديث بمجرد حصولنا على مزيد من المعلومات.
في حين أن كل هذا يبدو مخيفًا، ضع في اعتبارك أن المهاجم سيظل بحاجة إلى الوصول فعليًا إلى الهاتف من أجل الوصول إلى root shell. وإلى أن يطرح OnePlus تحديثًا يعمل على تصحيح الثغرة الأمنية، حاول إبقاء هاتف OnePlus Nord 2 بعيدًا عن الغرباء. على الرغم من أننا لم نواجه أي حالات استخدام ضار، إلا أنه لا يمكن للمرء استبعاد مثل هذا الاحتمال نظرًا لأن الثغرة الأمنية موجودة منذ شهرين على الأقل.