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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-61500 — Python PoC ومختبر Docker لـ CVE-2026-61500: يستعيد حالة PRNG الخاصة بـ Rejetto HFS V8 لتزوير ملف تعريف جلسة المسؤول وتحقيق RCE عبر server_code. | Kitploit
أدوات/GitHubGitHub/aramosf/cve-2026-61500
هجمات كلمات المرورتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبالمحاكاة الافتراضية للأمانالتشفيراختبار الاختراقالتعلم والتعليمالفريق الأحمرمختبرات وتدريب عملي
GitHubaramosf/cve-2026-61500
منذ يوم واحدلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

CVE-2026-61500

Python PoC ومختبر Docker لـ CVE-2026-61500: يستعيد حالة PRNG الخاصة بـ Rejetto HFS V8 لتزوير ملف تعريف جلسة المسؤول وتحقيق RCE عبر server_code.

عرض المستودع

CVE-2026-61500: تزوير جلسة Rejetto HFS للوصول إلى تنفيذ التعليمات عن بُعد (RCE)

عرض حي من الطرفية

CVE-2026-61500 هو ثغرة تزوير جلسة غير مُصادَق عليها في Rejetto HFS 3.0.0 حتى 3.2.0. أنشأ HFS مفتاح توقيع ملف تعريف ارتباط جلسة Koa الخاص به باستخدام JavaScript Math.random() وكشف مخرجات من نفس مولّد الأرقام العشوائية الزائفة V8 PRNG في مصافحة تسجيل الدخول SRP غير المُصادَق عليها. يمكن للمهاجم إعادة بناء حالة PRNG، واستعادة مفتاح التوقيع، وتزوير جلسة مسؤول، واستخدام ميزة إعدادات server_code الموثّقة لتنفيذ JavaScript على جانب الخادم.

يحتوي هذا المستودع على إثبات مفهوم بلغة Python ومقارنة Docker قابلة للتخلص منها باستخدام صورتي HFS 3.2.0 و3.2.1 الرسميتين. نسخة النشر مقصورة عمدًا على أهداف HTTP على واجهة الاسترجاع المحلية (loopback).

النطاق

البيانالحالة
استعادة حالة V8 xorshift128+ من استجابات تسجيل الدخول غير المُصادَق عليهامؤكَّد
استعادة مفتاح توقيع ملف تعريف ارتباط HFS النشطمؤكَّد
تزوير جلسة مقبولة كمسؤول HFSمؤكَّد
تنفيذ علامة server_code حميدة في HFS 3.2.0 الرسميمؤكَّد
استقبال صدفة عكسية بصلاحيات root داخل شبكة Compose المعزولةمؤكَّد
التوقف قبل تزوير الجلسة على HFS 3.2.1 الرسميمؤكَّد
الاستهداف أو الاستمرارية على مستوى الإنترنتغير مُتاح أو مُدَّعى

عملية الاستغلال

  1. أرسل ستة طلبات API غير مُصادَق عليها من نوع loginSrp1 للحساب المعروف admin. كل استجابة مصابة تضع loggingIn.sid رقميًا وملف تعريف ارتباط الجلسة الموقّع الخاص به في ترويسات Set-Cookie.
  2. حوّل خمسة أعداد عشرية متتالية إلى 53 بتًا مرئيًا من PRNG و ابحث بالقوة الغاشمة عن البتات الإحدى عشرة المنخفضة المحذوفة. اعكس وطوّر تكرارية xorshift128+ الخاصة بـ V8 حتى تحقق حالة داخلية واحدة كل قيمة مُلاحَظة.
  3. أعد إنتاج ثلاث قطع base-36 المستخدمة بواسطة HFS randomId(30). يأخذ PoC في الحسبان تقريب أقصر سلسلة في V8 ويتحقق من المرشحين مقابل HMAC hfs_http.sig مُلاحَظ، والذي يحدد أيضًا إزاحة بدء التشغيل.
  4. وقّع جلسة اصطناعية تحتوي على username: admin، ثم استدعِ get_config لإثبات أن ملف تعريف الارتباط المزوّر يمتلك صلاحيات المسؤول.
  5. استدعِ set_config بوحدة server_code صغيرة. الحمولة الافتراضية تكتب علامة حميدة في /data؛ --command متاح فقط لمختبر Docker على واجهة الاسترجاع المحلية.

هذه سلسلة HTTP من نوع الصندوق الأسود: لا يقرأ PoC الملفات أو الذاكرة أو متغيرات البيئة أو حالة العملية من الهدف. تُستخدم معرفة الشيفرة المصدرية لنمذجة الخوارزمية المصابة.

الإصدارات المتأثرة والمُصلَحة

  • المتأثرة: HFS 3.0.0 حتى 3.2.0.
  • أول إصدار مُصلَح: HFS 3.2.1.
  • الإصلاح: 59472e534bf7e056d708382d02935c2eaf956927.

يستبدل الإصلاح مفتاح التوقيع بـ 32 بايت من randomBytes() في Node.js و يستبدل معرّف تسجيل الدخول الرقمي المكشوف بـ randomUUID(). توفير قيمة COOKIE_SIGN_KEYS قوية وصريحة يخفف من التنبؤ بمفتاح التوقيع، لكن يبقى الترقية هو العلاج الموصى به.

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

  • المضيف: Linux 6.18.33.2-microsoft-standard-WSL2، x86_64.
  • Docker 29.7.2؛ Docker Compose v5.5.0؛ Python 3.14.4.
  • الصورة المصابة: rejetto/hfs:v3.2.0، البصمة sha256:d6765e93b68de222583be7788afad699695fd08aa2f56377337f5139779e0746.
  • الصورة المُصلَحة: rejetto/hfs:v3.2.1، البصمة sha256:61db4da1f494df254aa7f48889c676b424b413e45b7b92cf4276f4b8e632aaec.
  • صورة استدعاء العرض التوضيحي: python:3.13-alpine، البصمة sha256:1a63a53928ce53d2b0baf08092a703f4840ac5dfbd61fd48802dbf48e08c801e.
  • تاريخ الاختبار: 2026-09-26.

ترتبط خدمتا HFS فقط بواجهة الاسترجاع المحلية للمضيف؛ ولا ينشر الاستدعاء أي منفذ. ينشئ المختبر مسؤولًا اصطناعيًا لأن loginSrp1 يجب استدعاؤه لاسم مستخدم موجود؛ كلمة المرور غير معروفة ولا يستخدمها الاستغلال.

تشغيل المقارنة القابلة للتخلص منها

المتطلبات هي Docker مع Compose، وPython 3.10 أو أحدث، وcurl.

root@kitploit:~
./verify.sh

يزيل المدقّق فقط lab/runtime/vulnerable وlab/runtime/fixed، ويشغّل كلتا الصورتين المثبّتتين بالبصمة، ويشغّل الضوابط الإيجابية والسلبية، و يوقف الحاويات افتراضيًا. استخدم KEEP_LAB=1 ./verify.sh لترك المختبر قيد التشغيل للفحص.

مع الاحتفاظ بالمختبر، يكون الاستدعاء المباشر للعلامة الحميدة كما يلي:

root@kitploit:~
python3 cve-2026-61500-poc.py \
  --target http://127.0.0.1:28182 \
  --marker cve-2026-61500-rce-marker.txt

لإثبات تنفيذ الأوامر داخل حاوية المختبر المملوكة:

root@kitploit:~
python3 cve-2026-61500-poc.py \
  --target http://127.0.0.1:28182 \
  --command 'id > /data/cve-command-output.txt'

يُرفض أي اسم مضيف غير تابع لواجهة الاسترجاع المحلية، أو هدف HTTPS، أو عنوان IP بعيد بواسطة التحقق من الوسائط. يعدّل الاستغلال server_code في HFS؛ استخدم فقط المختبر القابل للتخلص منه أو نظامًا لديك تفويض صريح بشأنه.

يذهب العرض التوضيحي المسجَّل خطوة أبعد: يشغّل demo.sh خدمة callback غير المكشوفة على شبكة Compose ويستخدم --command لتوصيل صدفة Bash عكسية بها. يرسل الاستدعاء فقط id وuname -a وpwd و exit، ويسجّل النص تحت lab/runtime/ المتجاهَل، ثم يُغلق. لا يُربط أي منفذ استدعاء بالمضيف.

النتيجة المُعاد إنتاجها

استعاد التشغيل الحقيقي بتاريخ 2026-09-26 حالة PRNG واحدة ومفتاح التوقيع الخاص بها، وتلقى HTTP 200 لطلب get_config إداري مزوّر، وثبّت حمولة العلامة، ولاحظ CVE_2026_61500_RCE_CONFIRMED في الحاوية المصابة. أنتج ضابط منفصل --command 'id > /data/cve-command-output.txt' uid=0(root) gid=0(root) groups=0(root) داخل تلك الحاوية الرسمية. أعادت الصدفة العكسية المسجَّلة الخاصة بـ Docker فقط نفس هوية root ودليل العمل /data بشكل مستقل. مقابل 3.2.1، احتوت أول استجابة تسجيل دخول على UUID غير شفاف وخرج PoC بحالة 3 قبل محاولة تزوير الجلسة. انظر docs/example-output.txt و docs/e2e-results.json.

البحث عن استغلال عام

في 2026-09-26، أُجريت عمليات بحث دقيقة عن CVE والاستغلال/PoC مقابل SearchSploit (فهرس Exploit-DB المحلي)، ونتائج الويب المفهرسة في GitHub، وPacket Storm، وExploit-DB، والويب العام. لم يُحدَّد أي استغلال عام فعّال في تلك المرحلة؛ وجدت النتائج بيانات وصفية لـ CVE/الإرشادات وصفحات تتبع الاستغلال فقط. هذه نتيجة مؤرخة وبأفضل جهد ممكن، وليست ادعاءً بأنه لا يمكن وجود استغلال في مكان آخر أو ظهوره لاحقًا.

الشكر

  • الاستغلال: A. Ramos <[email protected]> (Twitter: @aramosf).
  • اكتشاف الثغرة: Zach Hanley (@hacks_zach) من Horizon3.ai، بالتعاون مع Claude وAnthropic Research.
  • الإصلاح: Massimo Melina / Rejetto.

المراجع

  • إرشاد VulnCheck
  • إصدار HFS 3.2.1
  • التزام الإصلاح في المنبع
  • سجل CVE-2026-61500

إشعار قانوني

لأغراض البحث الأمني المصرّح به، والتحقق الدفاعي، والتعليم فقط. أنت مسؤول عن الحصول على الإذن والامتثال للقانون المعمول به.

تنزيل الأداة