
ماسح ثغرات سلبي لـ CVE-2026-1731 — BeyondTrust RS/PRA RCE قبل المصادقة (CVSS 9.9). للاستخدام التعليمي والدفاعي فقط.
╔═══════════════════════════════════════════════════════════════╗
║ ║
║ CVE-2026-1731 ║
║ BeyondTrust RS/PRA Passive Vulnerability Scanner ║
║ ║
╠═══════════════════════════════════════════════════════════════╣
║ PASSIVE SCANNER — EDUCATIONAL & AUTHORIZED USE ONLY ║
║ ║
║ Performs passive fingerprinting via standard HTTP GET. ║
║ No exploit payloads sent. No WebSocket connections. ║
║ Only use against systems you own or are authorized to test. ║
║ ║
║ Methods: BRDF version extraction, /check_health, ║
║ static asset sizing, /get_mech_list API, ║
║ HTML analysis, copyright year, /nw probe ║
║ ║
║ Author: NetGuard 24/7 LLC ║
║ Web: https://netguard24-7.com ║
╚═══════════════════════════════════════════════════════════════╝
ماسح ضوئي سلبي للثغرة الأمنية CVE-2026-1731 — وهي ثغرة حرجة (CVSS 9.9) لتنفيذ التعليمات البرمجية عن بُعد قبل المصادقة في BeyondTrust Remote Support (RS) وPrivileged Remote Access (PRA).
تحدد هذه الأداة حالات BeyondTrust المعرضة للخطر باستخدام طلبات HTTP GET القياسية فقط. لا يتم إرسال أي حمولات استغلال. لا يتم إنشاء أي اتصالات WebSocket. لا تتم محاولة أي مصادقة.
تحديث: 16/2/2026
تطبيق التصحيح BT26-02-RS أو BT26-02-PRA سيجعل حالات BeyondTrust المكتشفة أدناه RS (v21.3 - 25.3.1) أو PRA (v22.1 - 24.X) تظهر كمعرضة للخطر نظرًا لأن التصحيح لن يؤدي إلى زيادات في الإصدار، وبالتالي فإن الحالات المصححة بـ (BT26-02-RS أو BT26-02-PRA) ستظهر كمعرضة للخطر. بمجرد ترقية الإصدار الأساسي، ستظهر الحالة كغير معرضة للخطر". وفقًا للبائع، يتم معالجة الإصلاح الرسمي في Remote Support 25.3.2 والإصدارات الأحدث | Privileged Remote Access 25.1 والإصدارات الأحدث
المؤلف: NetGuard 24/7 LLC
تم توفير هذه الأداة لأغراض تعليمية ودفاعية مصرح بها فقط.
يُسمح لك فقط باستخدام هذه الأداة ضد الأنظمة التي تملكها أو لديك تفويض كتابي صريح لاختبارها. قد يؤدي الفحص غير المصرح به للأنظمة التي لا تملكها إلى انتهاك القوانين المعمول بها بما في ذلك قانون الاحتيال وإساءة استخدام الكمبيوتر (CFAA) والقوانين المماثلة في ولايات قضائية أخرى.
لا يتحمل المؤلفون أي مسؤولية عن إساءة استخدام هذه الأداة. باستخدامك لهذا البرنامج، فإنك توافق على استخدامه بمسؤولية ووفقًا لجميع القوانين واللوائح المعمول بها.
CVE-2026-1731 هي متغير من CVE-2024-12356 (الثغرة الأمنية التي استخدمها APT الصيني لاختراق وزارة الخزانة الأمريكية). يستهدف كلاهما نفس نقطة نهاية WebSocket /nw وسكربت Bash الأساسي thin-scc-wrapper. أضاف تصحيح BT24-10 لـ CVE-2024-12356 فحصًا رقميًا للسلامة، لكنه فشل في منع تقييم حساب Bash لمعامل remoteVersion — وهو ما تستغله CVE-2026-1731.
يستخدم هذا الماسح 8 طرق بصمة سلبية — تم التحقق من صحتها مقابل حالات BeyondTrust الحية — لتحديد إصدار المنتج وحالة الثغرة الأمنية دون إرسال أي حركة استغلال.
الطريقة 1 (BRDF) هي نفس التقنية المستخدمة في Metasploit وإضافة Nessus 213456. عندما يُرجع BRDF إصدارًا دقيقًا، تكون الثقة دقيقة. بعض حالات 25.x تزيل الإصدار من BRDF — في هذه الحالات، يتم تسجيل الطرق 2-6 وتأكيدها لاستنتاج نطاق الإصدار.
/nwgit clone https://github.com/YOUR_USERNAME/cve-2026-1731-scanner.git
cd cve-2026-1731-scanner
chmod +x cve_2026_1731_scanner.py
python3 cve_2026_1731_scanner.py -t support.example.com -v
# إنشاء قائمة أهداف (مضيف واحد في كل سطر)
cat > targets.txt << 'EOF'
support.example.com
pra.example.com
192.168.1.50
10.0.0.100:8443
remote-support.beyondtrustcloud.com
EOF
# تشغيل الفحص
python3 cve_2026_1731_scanner.py -f targets.txt --threads 20 -o results.csv --json results.json -v
usage: cve_2026_1731_scanner.py [-h] (-t TARGET | -f FILE) [-o OUTPUT]
[--json JSON_OUTPUT] [--threads THREADS] [-v]
options:
-t, --target TARGET اسم مضيف أو عنوان IP واحد
-f, --file FILE ملف يحتوي على الأهداف (واحد في كل سطر)
-o, --output OUTPUT تصدير النتائج إلى ملف CSV
--json JSON_OUTPUT تصدير النتائج إلى ملف JSON
--threads THREADS الخيوط المتزامنة (الافتراضي: 10)
-v, --verbose إخراج تفصيلي لكل هدف
يقبل ملف الأهداف إدخالًا مرنًا — إدخال واحد في كل سطر:
# التعليقات مدعومة (الأسطر التي تبدأ بـ #)
192.168.1.1
10.0.0.5
support.example.com
support.example.com:8443
https://support.example.com
http://support.example.com # يتم الترقية تلقائيًا إلى HTTPS
support.example.com/login # تتم إزالة المسارات تلقائيًا
| المستوى | المعنى |
|---|---|
| حرج | تم تأكيد الإصدار الدقيق كمعرض للخطر عبر BRDF، أو تشير إشارات متعددة عالية الثقة إلى قبل 25.x |
| الرمز | المعنى |
|---|---|
0 | لا توجد نتائج حرجة أو عالية الخطورة |
1 | تم اكتشاف نتائج عالية الخطورة |
2 | تم اكتشاف نتائج حرجة |
# مثال: تكامل خط أنابيب CI/CD
python3 cve_2026_1731_scanner.py -f targets.txt -o results.csv
if [ $? -eq 2 ]; then
echo "حرج: تم العثور على حالات BeyondTrust معرضة للخطر!"
# تشغيل تنبيه / استدعاء المناوب / فتح تذكرة
fi
[*] Scanning https://support.example.com...
Status: VULNERABLE [CRITICAL]
Version: 24.1.4 (via BRDF /get_rdf, confidence: EXACT)
Company: examplecorp
Product: Remote Support
Signals: health=old, login.js=36458B, html=modern, ©2024
/nw: REACHABLE
إذا حدد الماسح حالات معرضة للخطر:
/nw إذا لم يكن التصحيح الفوري ممكنًا/nw بقيم remoteVersion غير عادية تحتوي على $() أو علامات backtickطلبات السحب مرحب بها. إذا اكتشفت طرق بصمة سلبية إضافية أو إشارات ارتباط بالإصدارات، فيرجى فتح مشكلة أو طلب سحب.
رخصة MIT — راجع LICENSE للحصول على التفاصيل.
NetGuard 24/7 LLC https://netguard24-7.com
| الحقل | التفاصيل |
|---|
| CVE | CVE-2026-1731 |
| CVSS | 9.9 (حرجة) |
| الاستشارة | BT26-02 |
| النوع | تنفيذ التعليمات البرمجية عن بُعد قبل المصادقة |
| المتجه | نقطة نهاية WebSocket /nw — حقن تقييم حساب Bash |
| المتأثر | RS ≤ 25.3.1، PRA ≤ 24.3.4 |
| المُصلَح | RS 25.3.2+، PRA 25.1.1+ |
| الاستغلال | نشط في البرية اعتبارًا من 12 فبراير 2026 |
| # | الطريقة | نقطة النهاية | ما تستخرجه | مستوى الثقة |
|---|
| 1 | استخراج إصدار BRDF | GET /get_rdf?comp=sdcust&locale_code=en-us | إصدار المنتج الدقيق من الترويسة الثنائية (مثل 24.1.4) | دقيق |
| 2 | استجابة /check_health | GET /check_health | "Health Check: Succeeded" = قبل 25.x / "Status: Primary" = 25.x+ | عالية |
| 3 | حجم الأصول الثابتة | HEAD /js/login.js | حجم الملف: ~36K-39K = قبل 25.x / ~12K = 25.x+ | عالية |
| 4 | واجهة برمجة /get_mech_list | GET /get_mech_list?version=3 | اسم الشركة + حقل thin_rep_enabled (25.x+ فقط) | عالية |
| 5 | بنية HTML | GET /login | XHTML 1.1 + BOMGAR = قبل 25.x / HTML5 = 25.x+ | متوسطة |
| 6 | سنة حقوق النشر | تذييل GET /login | 2002-2024 = قبل 25.x / 2002-2025 = 25.x | متوسطة |
| 7 | معلومات البوابة | GET /get_portal_info | قيمة X-Ns-Company (مؤشر استطلاع المهاجم) | — |
| 8 | فحص WebSocket | GET /nw (HTTP فقط) | يؤكد إمكانية الوصول إلى سطح الهجوم | — |
| عالٍ | من المحتمل أن يكون معرضًا للخطر ولكن مع إشارات تأكيد أقل؛ يوصى بالتحقق اليدوي |
| متوسط | يُستنتج كـ 25.x+ (قد يظل RS معرضًا للخطر حتى 25.3.1)؛ تحقق من تصحيح BT26-02 |
| منخفض/معلوماتي | حالة SaaS (مصححة تلقائيًا)، إصدار مصحح مؤكد، أو آمن مؤكد |
| الثقة | المصدر | المعنى |
|---|
| دقيقة | BRDF /get_rdf | سلسلة الإصدار الدقيقة المستخرجة من الثنائي (مثل 24.1.4) |
| عالية | إشارات متعددة (3+) | 3 إشارات مستقلة أو أكثر تتفق مع 0 تناقضات |
| متوسطة | إشارات متعددة (2+) | غالبية الإشارات تتفق ولكن مع بعض الغموض |
| منخفضة | غير حاسمة | إشارات متضاربة أو غير كافية |
| الحقل | الوصف |
|---|
target | عنوان URL المفحوص |
is_beyondtrust | ما إذا تم اكتشاف BeyondTrust |
product_type | Remote Support أو Privileged Remote Access |
product_version | الإصدار الدقيق (إذا تم استخراجه من BRDF) |
version_source | كيفية تحديد الإصدار |
version_confidence | دقيقة أو عالية أو متوسطة أو منخفضة |
company_name | قيمة X-Ns-Company (المستخدمة في الاستغلال) |
copyright_year | من تذييل صفحة تسجيل الدخول |
health_check_type | old (قبل 25.x) أو new (25.x+) |
login_js_size | حجم ملف /js/login.js |
thin_rep_enabled | موجود فقط في 25.x+ |
html_generation | legacy (XHTML) أو modern (HTML5) |
is_saas | حالة SaaS (.beyondtrustcloud.com) |
ws_endpoint_reachable | ما إذا كان /nw يستجيب |
vulnerability_status | نتيجة التقييم |
risk_level | حرج أو عالٍ أو متوسط أو منخفض أو معلوماتي |
details | تفاصيل التقييم القابلة للقراءة |