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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
hp-slate7-root-kit — عدة تجذير لجهاز HP Slate 7 2800 بنظام Android 4.1.1 باستخدام CVE-2015-1805. | Kitploit
أدوات/GitHubGitHub/valentineus/hp-slate7-root-kit
أمان أندرويدتصعيد الامتيازاتآليات الاستمراريةتحليل الثغرات الأمنيةالاستغلالما بعد الاستغلالأمن الجوالتطوير الحمولاتاستغلال الملفات الثنائية
GitHubvalentineus/hp-slate7-root-kit

hp-slate7-root-kit

عدة تجذير لجهاز HP Slate 7 2800 بنظام Android 4.1.1 باستخدام CVE-2015-1805.

118منذ شهر واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
عرض المستودع

تجذير HP Slate 7 2800 على Android 4.1.1

English | Русский

يحتوي هذا المستودع على حزمة كاملة ومكتفية ذاتيًا للحصول على وصول جذر دائم على HP Slate 7 2800 الذي يعمل بالبرنامج الثابت 1.05.18 والنواة Linux 3.0.8+ عبر استغلال الثغرة المحلية CVE-2015-1805. تم تشغيل الحزمة على الجهاز اللوحي الفعلي، وتم التحقق من النتيجة من جلسة ADB جديدة وبعد إعادة تشغيل عادية.

هذه ليست أداة تجذير Android عامة. الاستغلال خاص بتهيئة نواة HP هذه. لا تشغّله على طراز مختلف أو برنامج ثابت مختلف أو إصدار نواة مختلف.

التهيئة المُتحقَّق منها

المعاملالقيمة المُتحقَّق منها
الشركة المصنّعة والطرازHP Slate 7 2800
Android4.1.1، API 16، الإصدار JRO03H
المنتج / الجهازt7h / pine
المعالجRockchip RK3066، ARMv7
بصمة الإصدارhp/t7h/pine:4.1.1/JRO03H/v1.05.18_user:user/release-keys
النواة3.0.8+ #13 SMP PREEMPT Tue Jul 28 15:24:30 CST 2015
ABIARM EABI5 32-بت
SELinuxغير موجودة في تهيئة النواة (CONFIG_SECURITY معطّلة)
قسم /systemext4، مُثبَّت للقراءة فقط افتراضيًا

يمكنك فحص الجهاز دون إجراء أي تغييرات:

adb devices -l
adb shell getprop ro.product.model
adb shell getprop ro.build.fingerprint
adb shell getprop ro.build.version.sdk
adb shell cat /proc/version

بدلاً من ذلك، استخدم السكربت أدناه. سيرفض المتابعة إذا لم تتطابق بصمة الإصدار أو إصدار النواة:

./scripts/check-target.sh
./scripts/check-target.sh ADB_SERIAL

محتويات المستودع

.
├── bin/
│   ├── hp-slate7-cve-2015-1805-root  # verified exploit
│   ├── hp-slate7-install-root        # installs su into /system
│   └── hp-slate7-su                  # minimal setuid-root wrapper
├── src/
│   ├── exploit/                      # CVE source and device-specific changes
│   ├── installer/install-root.c      # installer source
│   └── su/rootsh.S                   # minimal su source
├── scripts/
│   ├── build.sh                      # rebuilds all three ELF files
│   ├── check-target.sh               # safe compatibility check
│   └── root-device.sh                # verifies, uploads, and runs the kit
├── SHA256SUMS                        # hashes of the verified bin/* files
├── NOTICE                            # attribution for the original PoC
└── LICENSE                           # GPL-3.0

صيغ الملفات وأغراضها

الملفالصيغةالحجمالغرض
bin/hp-slate7-cve-2015-1805-rootELF 32-بت ARM EABI5، static، unstripped2,722,320 بايتيستغل الثغرة CVE، ويحصل على uid 0، ويُشغّل المثبّت
bin/hp-slate7-install-rootELF 32-بت ARM EABI5، static، stripped22,596 بايتيعيد تثبيت /system مؤقتًا بوضع rw، ويُثبّت su، ويستعيد وضع ro
bin/hp-slate7-suELF 32-بت ARM EABI5، static، stripped656 بايتيستدعي setresgid(0,0,0) و setresuid(0,0,0)، ثم يُشغّل /system/bin/sh

المجاميع الاختبارية SHA-256 للملفات الثنائية المُتحقَّق منها:

6bf8ea09efb9f409dfc7aa5efbc3108e5c1a19fc5b07ae913328ef4639a7644f  bin/hp-slate7-cve-2015-1805-root
4857c71efc846636afc5b50d7f3c971c6eb68d3760f652086f2a38c5dc50bc4a  bin/hp-slate7-install-root
40626e555f71b71aa5ef7a727e9f6be55e552ef998ae3f49e9390f3e213c610e  bin/hp-slate7-su

التحقق على macOS:

shasum -a 256 -c SHA256SUMS

التحقق على Linux:

sha256sum -c SHA256SUMS

استخدم الملفات من bin/ على الجهاز اللوحي: فهذه هي البايتات الدقيقة التي تم التحقق منها على الجهاز. دليل build/ مخصص لإعادة البناء محليًا ولا يتتبعه Git.

الثغرة المستخدمة

CVE-2015-1805 هي خلل في تطبيقي pipe_read() و pipe_write() في أنوية Linux الأقدم. عندما تفشل نسخة ذرية، يواصل الكود اجتياز مصفوفة iovec بشكل غير صحيح، مما قد يحرّك مؤشرًا خارج حدوده. ونتيجة لذلك، يمكن لعملية محلية دون صلاحيات إتلاف الذاكرة أو تعطيل النواة أو رفع صلاحياتها. نُشر شرح مفصّل للآلية على oss-security. يمكن العثور على الإصلاحات، من بين أماكن أخرى، في التزامات نواة Linux الرئيسية (upstream) 637b58c و f0d1bec.

أثبتت نواة 3.0.8+ الخاصة بالجهاز اللوحي أنها قابلة للاستغلال. قبل تعديل ذاكرة النواة، تم اختبار السباق نفسه بشكل منفصل باستخدام مسبار غير ضار كان هدفا الكتابة فيه موجودَين في الذاكرة العادية لعملية الاختبار. أبلغ المسبار عن CVE-2015-1805: VULNERABLE، وظل الجهاز اللوحي متاحًا عبر ADB.

سلسلة رفع الصلاحيات

  1. يُنشئ الاستغلال سباقًا بين readv() وتغييرات تعيين الذاكرة ومعالجة مصفوفة iovec كبيرة في كود الأنابيب الهشّ للنواة.
  2. تستبدل بدائية الكتابة الناتجة مؤقتًا الإدخال غير المستخدم 222 في sys_call_table بعنوان trampoline صغير بتعليمات ARM داخل عملية الاستغلال.
  3. يُحسب عنوان الجدول عبر المتجه العالي عند 0xffff0008. على الجهاز المُتحقَّق منه، تكون التعليمات 0xe59ff410، وقيمتها الحرفية تشير إلى vector_swi = 0xc04d0d40.
  4. تم تجميع vector_swi و sys_call_table بشكل مستقل من أرشيف النواة الرسمي HP Open Source 1.05.10 (SHA-256 للأرشيف: dd69f0468973714fd9ba22cdfea7e96f39f651ee51b9cb537728d9dcadbafda2) مع defconfig باسم rk30_t7h_dvt_defconfig. إزاحتهما هي 0xc4. لا يحتوي البرنامج الثابت المثبَّت على OABI ولا على seccomp، لذا فإن عنوان الجدول النهائي وقت التشغيل هو 0xc04d0e04.
  5. يتكوّن الـ trampoline من ست تعليمات ARM بالضبط. يحصل على sp الحالي، ويحاذيه مع حجم مكدس النواة البالغ 8,192 بايت، ويكتب -1 فقط إلى thread_info.addr_limit عند الإزاحة 8. لا يحتوي على استدعاءات خارجية أو prologue أو كود زمن تشغيل من المترجم.
  6. مباشرة بعد عودة استدعاء النظام المؤقت، يُستعاد الإدخال 222 من الإدخال 223. كلا الإدخالين هما sys_ni_syscall في كود HP المصدري؛ المؤشر المستعاد على النواة المُتحقَّق منها هو 0xc051900c.
  7. بمجرد توسيع addr_limit، تقرأ آلية نسخ الأنابيب task_struct الحالي، وتحدد موقع cred، وتتحقق من البنية باستخدام قيم uid/gid الحالية والمحاذاة وعداد المرجع وشرط real_cred == cred. فقط بعد هذه الفحوصات تُصفَّر قيم uid/gid وتُمتلأ أقنعة الصلاحيات بالآحاد.
  8. تحصل العملية على uid=0 وتُشغّل /data/local/tmp/install-root. يعيد المثبّت تثبيت /system بوضع rw، وينسخ الحمولة إلى /system/xbin/su، ويعيّن الملكية root:root والوضع 06755، ويستدعي sync()، ويعيد تثبيت /system للقراءة فقط.

كانت الدالة الأصلية current_thread_info() من ترويسات النواة القديمة غير متوافقة مع Clang الحديث عند -O0: نموذج أولي مبكر قرأ كلمة غير مهيأة بدلاً من سجل sp وكان يمكن أن يُسقط النواة. في هذا المستودع، استُبدلت بـ trampoline naked بتعليمات ARM مُتحقَّق منه. لا يتضمن المستودع النسخة الثنائية المبكرة.

البرمجيات المطلوبة

لاستخدام الملفات الجاهزة من bin/

  • كمبيوتر يعمل بنظام macOS أو Linux؛ يُمكن أيضًا استخدام Windows مع سائق USB مناسب لـ ADB، لكن تم التحقق من هذا الإجراء على macOS؛
  • adb من Android SDK Platform Tools؛
  • كابل بيانات USB يعمل؛
  • تفعيل تصحيح أخطاء USB وقبول مفتاح RSA الخاص بالكمبيوتر على الجهاز اللوحي.

لا تحتاج إلى Android NDK أو Java أو Python أو fastboot أو محمّل إقلاع (bootloader) مفتوح أو استرداد مخصص (custom recovery) أو تطبيق تجذير APK أو وصول إلى الشبكة. الاستغلال والحمولة مربوطان بشكل ثابت (statically linked).

لإعادة البناء من المصدر

  • Zig 0.15.2؛ يكفي فك ضغط الأرشيف المحمول، دون الحاجة إلى تثبيت حزم على مستوى النظام؛
  • Bash؛
  • shasum أو sha256sum للتحقق من النتيجة.

لا يزال Android NDK غير مطلوب: يوفر Zig سلسلة أدوات ترجمة متقاطعة (cross-toolchain) ARM musl.

تجهيز الجهاز اللوحي

تنزيل الأداة