Skip to content
KitploitKITPLOIT
أدواتعمليات الاستغلالالمدونة
Log in
إرسال
أدواتعمليات الاستغلالالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
mali-pagecache-root — مجموعة أدوات الجذر لجهاز TCL 50C721 (RTD1319 / Mali-G31) — سلسلة استغلال مستقلة لثغرة CVE-2022-22706 | Kitploit
أدوات/GitLabGitLab/c4psu13/mali-pagecache-root
أمان أندرويدأمان الأنظمة المدمجةتصعيد الامتيازاتآليات الاستمراريةالاستغلالشيل كودما بعد الاستغلالأمان الأجهزة وإنترنت الأشياءتطوير الحمولاتاستغلال الملفات الثنائية
GitLab
2منذ 22س 15دلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة
c4psu13/mali-pagecache-root

mali-pagecache-root

مجموعة أدوات الجذر لجهاز TCL 50C721 (RTD1319 / Mali-G31) — سلسلة استغلال مستقلة لثغرة CVE-2022-22706

عرض المستودع

مجموعة أدوات الحصول على صلاحيات الجذر لجهاز TCL 50C721

سلسلة استغلال كاملة للحصول على الجذر ومجموعة أدوات ما بعد الجذر لـ الجذر المقيّد (tethered root)، وSELinux Permissive، وحظر الإعلانات، وإزالة البرامج غير المرغوب فيها، والنسخ الاحتياطي الآلي على إصدار برنامج ثابت واحد لجهاز TCL Android TV. هذه أبحاث وأدوات خاصة بإصدار برنامج ثابت معيّن، وليست أداة جذر عالمية لأجهزة TCL ولا مثبّتًا مدعومًا.

النطاق المُختبَر

العنصروحدة الاختبار المسجّلة
التلفازTCL QLED 50C721 / BeyondTV6
البرنامج الثابتV8-R51MT02-LF1V903، إصدار AR10
Android / النواةAndroid 11 / 4.14.198+
SoC / GPURealtek RTD1319 / Mali-G31 (Bifrost, kbase r28p0)
مساحة المستخدم32-bit ARMv7
تحديث الأمان المُبلَّغ عنه2024-03-05
النتيجة التاريخيةADB shell مع uid=0؛ SELinux Permissive

فقط هذه التركيبة من الطراز/البرنامج الثابت لديها نتيجة ناجحة مسجّلة. تحديد SoC الدقيق ومراجعة برنامج Mali التعريفي غير متسقين عبر السجلات الأصلية؛ راجع حدود التوافق. لم يُجرَ أي اختبار جذر جديد أثناء إعداد إصدار المصدر هذا.

ما الذي يفعله

سلسلة الاستغلال (auto_root)

يحقق الملف التنفيذي المستقل للحصول على الجذر (auto_root.c) قيمة uid=0 من سياق تطبيق غير مميّز في أقل من ثانيتين:

  1. المرحلة 1 — CVE-2022-22706 (كتابة في ذاكرة التخزين المؤقت للصفحات عبر Mali GPU): يستورد تعيينًا MAP_SHARED لصفحة __cxa_atexit الخاصة بـ libc.so كمخزن مؤقت لمستخدم GPU عبر KBASE_IOCTL_MEM_IMPORT. يستخدم mremap(MREMAP_FIXED) لاستبدال تعيين الملف. يكتب شيفرة شل Thumb-2 بحجم 112 بايت فوق __cxa_atexit في ذاكرة التخزين المؤقت للصفحات (الملف على القرص غير معدّل — محمي بواسطة dm-verity).

  2. المرحلة 3 — المحفّز الطبيعي: كل عملية C++ جديدة تستدعي __cxa_atexit() أثناء تهيئة CRT، فتنفّذ شيفرة الشل. يقوم نطاق مميّز (audioserver، rtkm_scene) بتعيين الصفحة الفيزيائية 0x1DE7000 عبر /dev/rtkmem ويكتب selinux_state.enforcing = 0.

  3. المرحلة 4a — تعديل بيانات الاعتماد المباشر: مع SELinux Permissive، يتنقّل عبر القائمة المترابطة task_struct في النواة عبر قراءات الذاكرة الفيزيائية من خلال /dev/rtkmem. يجد عمليتنا بمطابقة comm[]، ويستبدل بنية cred بـ uid=0 وقدرات كاملة من init_cred. يمسح TIF_SECCOMP لتجاوز مرشّح BPF seccomp الخاص بـ zygote.

  4. المرحلة 4b — تقوية النظام: يقوم بعمل bind-mount لملفات hosts الخاصة بحظر الإعلانات، ويُسقط قواعد iptables التي تحظر عناوين IP الخاصة بالقياس عن بُعد، ويعطّل 28 حزمة من البرامج غير المرغوب فيها، ويمنح APP_AUTO_START لاستمرارية الإقلاع، ويعطّل شيفرة الشل، ويعيد تفعيل SELinux إلى Enforcing.

المراحل المستقلة

ينفّذ البرنامجان المستقلان (root_cve22706.c، libc_rtkmem_patch2.c) نفس بدائية الكتابة في ذاكرة التخزين المؤقت للصفحات الخاصة بـ CVE-2022-22706 كمراحل جذر مقيّد منفصلة، وهي مفيدة للحصول على الجذر يدويًا عبر ADB وفهم الاستغلال بشكل أساسي.

السكربتات

  • scripts/root.sh — أتمتة ADB: يتصل بالتلفاز، ويشغّل المرحلتين المستقلتين، ويتحقق من حالة الجذر + SELinux.
  • scripts/post_root.sh — خطاف ما بعد الجذر يُستدعى بواسطة auto_root بعد التقوية. ينشئ نسخًا احتياطية كاملة للجهاز: تطبيقات APK المحمّلة جانبيًا، وبيانات التطبيقات، وإعدادات WiFi، وجميع الإعدادات، وقوائم الحزم. يقلّم تلقائيًا إلى أحدث 5 نسخ احتياطية.

المحتويات

  • ملخص تقني: السلسلة والآثار الجانبية وحدود الأدلة.
  • المصدر الأصلي وملاحظات البناء: الجذر المستقل + مرحلتان مستقلتان؛ لا ملفات تنفيذية مبنية مسبقًا.
  • حدود التوافق: ما يجب إثباته قبل التفكير في جهاز آخر.
  • ملاحظات الاسترداد: استرداد USB التاريخي الخاص بالطراز والتحذيرات.
  • مقتطف من مصدر النواة: تحليل داعم، وليس تبعية للبناء.

لا يتضمن أي APK أو مشروع تطبيق APK قابل لإعادة الإنتاج؛ لا يوجد هنا إصدار يُثبَّت مرة واحدة ويقلع تلقائيًا. صُمّم الملف التنفيذي المستقل للحصول على الجذر ليُستدعى من الشيفرة الأصلية لتطبيق APK، لكن غلاف APK ليس جزءًا من هذا الإصدار.

البدء السريع

# Build (requires Android NDK)
cd exploit && make

# Push to TV
adb connect <TV_IP>:5555
adb push bin/auto_root /data/local/tmp/
adb push bin/root_cve22706 /data/local/tmp/
adb push bin/libc_rtkmem_patch2 /data/local/tmp/

# Option A: Run the autonomous chain (includes hardening + backup)
adb shell /data/local/tmp/auto_root

# Option B: Manual two-stage root via script
bash scripts/root.sh <TV_IP>

قبل التفكير في الاستخدام

استخدمه فقط على أجهزة تملكها أو لديك تفويض صريح بتقييمها. راجع جميع ملفات C وكل افتراض خاص بالبرنامج الثابت أولاً. حافظ على البيانات واحصل على صورة استرداد مطابقة معروفة وإجراء مستقل. لا تعرّض ADB لشبكة غير موثوقة. إعادة التشغيل تزيل التصحيحات المتطايرة (ذاكرة التخزين المؤقت للصفحات، وتركيبات bind، وiptables)، لكن تعطيل الحزم وAPP_AUTO_START يبقيان.

لا تقم بوميض صور boot أو vbmeta المصححة بناءً على هذا المشروع. أدت محاولتان تاريخيتان إلى حلقة إقلاع (bootloop)؛ ولم يتم إثبات أي طريقة جذر دائم ولا ضمان استرداد شامل.

الترخيص

MIT لجميع الشيفرة الأصلية. يحتفظ مقتطف النواة (kernel/mem.c) بترخيص GPL-2.0 وإشعارات حقوق النشر الخاصة به. راجع LICENSE وprovenance للإسناد والمراجع الأصلية.

تنزيل الأداة