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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
CVE-2026-22557-check — اكتشف بأمان ما إذا كانت وحدة تحكم UniFi Network Application معرضة للثغرة CVE-2026-22557 | Kitploit
أدوات/GitHubGitHub/bishopfox/cve-2026-22557-check
الاستطلاعتحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبجمع المعلوماتاختبار الاختراق
GitHubbishopfox/cve-2026-22557-check

CVE-2026-22557-check

اكتشف بأمان ما إذا كانت وحدة تحكم UniFi Network Application معرضة للثغرة CVE-2026-22557

عرض المستودع
14منذ 4 أشهرلم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

أداة تقييم الثغرة CVE-2026-22557

اكتشاف آمن لما إذا كان وحدة تحكم تطبيق شبكة UniFi معرضة للثغرة CVE-2026-22557 دون التسبب في أي تعطيل. اطّلع على الكتابة الكاملة في مدونة Bishop Fox.

الوصف

CVE-2026-22557 هي ثغرة عبور مسار غير مصادق عليه في بوابة الضيوف الخاصة بتطبيق شبكة UniFi، تسمح للمهاجمين عن بُعد بقراءة ملفات عشوائية باسم مستخدم عملية التحكم (CVSS 10.0). تؤثر الثغرة على تطبيق شبكة UniFi الإصدار 10.1.85 وما قبله على الفرع 10.1.x، والإصدارات السابقة المقابلة على الفرعين 10.2.x و 9.0.x. قامت Ubiquiti بشحن الإصلاحات في الإصدارات 10.1.89 و 10.2.97 و 9.0.118 (SAB-062).

يقوم عارض صفحة الفشل في بوابة الضيوف بقراءة معامل الطلب page_error ويستخدمه كما هو كمسار نسبي في أداة تحميل موارد البوابة، دون أي تحقق. عندما يتم تعيين portal_customized: true على الموقع الذي يتم الاستعلام عنه (التكوين الذي ينتهي به أي بوابة ضيوف ذات علامة تجارية، مثل فنادق أو متاجر أو مقاهي)، يحل المحمّل ذلك المسار مقابل دليل البوابة على القرص، ويمكن للمسار الهروب منه.

تقوم هذه الأداة باختبار الثغرة بطريقة غير تخريبية عن طريق:

  1. قراءة الإصدار المُبلغ عنه من وحدة التحكم من /status ومقارنته بخطوط الإصلاح في SAB-062
  2. تأكيد أن بوابة الضيوف قد تم توزيعها على عنوان URL المقدم
  3. فحص معامل page_error على /guest/<site>/wechat/sign بأعماق ../ من 1 إلى 8 مقابل اسم ملف ثنائي الفرع، لتحديد ما إذا كان العبور يعمل على الإطلاق
  4. إذا عمل العبور، يقوم بقراءة إضافية واحدة مقابل ملف كتالوج وقت التشغيل غير الحساس (firmware.json) لتحديد ما إذا كان فرع نظام الملفات للبوابة المخصصة نشطًا

تطلب الأداة ملف كتالوج وقت التشغيل فقط كإشارة لنشاط الفرع. إنها لا تقرأ بيانات الاعتماد، أو مواد TLS، أو حالة قاعدة البيانات، أو النسخ الاحتياطية، ولا تكتب أي محتوى ملف إلى stdout أو القرص. يتم طباعة الحكم فقط.

  • وحدات التحكم القابلة للثغرة مع portal_customized: true على الموقع الذي يتم الاستعلام عنه تُرجع ملف الكتالوج عند العمق المُعاير، مما يؤكد VULNERABLE.
  • وحدات التحكم المكشوفة جزئيًا التي تعمل بإصدار قابل للثغرة ولكن مع تعيين portal_customized: false على الموقع الذي يتم الاستعلام عنه تُؤدي العبور في خطوة المعايرة ولكن لا تُرجع محتوى القرص في خطوة التأكيد → PARTIALLY EXPOSED. التطبيق الثنائي لا يزال ضعيفًا؛ التصحيح مطلوب حتى لو لم يكن هذا الموقع في الحالة القابلة للاستغلال.
  • وحدات التحكم المُصححة (10.1.89+ / 10.2.97+ / 9.0.118+) ترفض العبور في كل عمق → NOT VULNERABLE.
  • المواقع أو الموصّلات غير القابلة للوصول تُعطي NOT EXPOSED.

التثبيت

git clone https://github.com/BishopFox/CVE-2026-22557-check
cd CVE-2026-22557-check

مطلوب Python 3.9+. تستخدم الأداة مكتبة Python القياسية فقط، لذلك لا حاجة لخطوة pip install.

الاستخدام

اختبر وحدة تحكم تطبيق شبكة UniFi عند <TARGET>. وجّه الأداة إلى أي عنوان URL يصل إلى واجهة الويب الخاصة بوحدة التحكم؛ يتم توزيع المعالج القابل للثغرة على منفذ الإدارة (افتراضي 8443/TCP) وكذلك على منافذ بوابة الضيوف المخصصة (8843، 8880).

python3 cve_2026_22557_check.py <BASE_URL> [--site NAME]

اسم الموقع الافتراضي هو default. يجب على عمليات نشر UniFi التي تحتوي على مواقع متعددة إعادة تشغيل الأداة مع --site <name> لكل موقع. تصبح وحدة التحكم قابلة للاستغلال بمجرد أن يحتوي أي موقع من مواقعها على portal_customized: true.

تستخدم الأمثلة أدناه --brief للحصول على نتيجة سطر واحد لكل مضيف. قم بتشغيلها دون --brief للحصول على اللافتة الكاملة، والتقدم خطوة بخطوة، وكتلة النتائج التي تتضمن إجراءات التصحيح الموصى بها.

مثال: وحدة تحكم قابلة للثغرة

وحدة التحكم تعمل بإصدار قابل للثغرة وشرط البوابة المخصصة مسبقًا نشط للموقع المُستعلم عنه، لذلك مسار القراءة غير المصادق عليه قابل للوصول.

$ python3 cve_2026_22557_check.py https://192.168.1.100:8443 --brief
[VULNERABLE]        https://192.168.1.100:8443 site=default

مثال: وحدة تحكم مكشوفة جزئيًا

وحدة التحكم تعمل بإصدار قابل للثغرة، ولكن الموقع المُستعلم عنه ليس لديه portal_customized: true ممكّنًا، لذلك شرط القراءة من القرص غير مستوفٍ لهذا الموقع. لا يزال التطبيق الثنائي بحاجة إلى التصحيح؛ موقع آخر على نفس وحدة التحكم قد يكون في الحالة القابلة للاستغلال.

$ python3 cve_2026_22557_check.py https://192.168.1.100:8443 --brief
[PARTIAL]           https://192.168.1.100:8443 site=default

مثال: وحدة تحكم مُصححة

وحدة التحكم تعمل بإصدار مُصحح (10.1.89، 10.2.97، 9.0.118، أو أحدث)، لذلك لا يُطلق العبور على أي عمق يُستعلم عنه.

$ python3 cve_2026_22557_check.py https://192.168.1.200:8443 --brief
[NOT VULNERABLE]    https://192.168.1.200:8443 site=default

الخيارات

--site NAME       اسم موقع UniFi لفحصه (افتراضي: "default")
--max-depth N     أقصى عمق عبور `../` لتجربته (افتراضي: 8)
--no-tls-recon    تخطي عرض الموضوع/أسماء SAN لشهادة TLS
--no-color        تعطيل إخراج الألوان ANSI (يُحترم أيضًا: متغير البيئة NO_COLOR)
--timeout N       مهلة لكل طلب بالثواني (افتراضي: 20)
--brief           طباعة نتيجة سطر واحد، بدون لافتة أو خطوات

رموز الخروج: 0 VULNERABLE، 1 جزئيًا مكشوف / غير قابل للثغرة / غير مكشوف، 2 خطأ في النقل.

الشروط المسبقة

يمكن للأداة إرجاع حكم VULNERABLE فقط إذا توفرت الشروط التالية:

  • الهدف يعمل بإصدار تطبيق شبكة UniFi قابل للثغرة (10.1.85 أو أقل على الفرع 10.1.x، أو الإصدارات النقطية السابقة المكافئة على 10.2.x / 9.0.x).
  • بوابة الضيوف قابلة للوصول عبر عنوان URL المقدم. يتم توزيع معالج /guest/* على منفذ الإدارة (8443) وكذلك على منافذ بوابة الضيوف المخصصة (8843، 8880)؛ الأداة تفحص فقط عنوان URL المعطى لها.
  • الموقع المُستعلم عنه يحتوي على portal_customized: true في إعداد guest_access، وهو الشرط المسبق لمسار قراءة القرص. وحدة التحكم ذات المواقع المتعددة تكون قابلة للاستغلال إذا كان أي موقع من مواقعها لديه هذا ممكّنًا.

إذا لم يتم استيفاء أي شرط، تتراجع الأداة إلى حكم أكثر تحفظًا. نتيجة PARTIALLY EXPOSED لا تزال تعني أن التطبيق ضعيف ويجب تصحيحه؛ الموقع المُستعلم عنه ببساطة لا يعرض مسار قراءة القرص.

التصحيح

  1. الترقية إلى تطبيق شبكة UniFi الإصدارات 10.1.89، 10.2.97، 9.0.118، أو أحدث.
  2. إذا لم تتمكن من التصحيح فورًا، قيّد الوصول إلى الشبكة إلى المنافذ 8443 / 8843 / 8880 (وأي وكيل عكسي يسبقها) بحيث يمكن الوصول إليها فقط من شبكات إدارة موثوقة.
  3. بعد التصحيح، قم بتدوير أي بيانات اعتماد قد تكون تم كشفها أثناء كون وحدة التحكم قابلة للوصول: كلمات مرور المدير، بيانات اعتماد SSH التي تدفعها وحدة التحكم إلى الأجهزة المُدارة، مخزن مفاتيح TLS لوحدة التحكم، الأسرار المشتركة لـ RADIUS، مفاتيح VPN / WireGuard، مواد CA لفحص SSL، كلمات مرور SMTP، وأي مفاتيح لبوابة الدفع.

الكشف في سجلاتك

نمط الطلب القابل للثغرة هو:

GET /guest/s/<site>/wechat/sign?page_error=<value>

يصل العملاء الشرعيون إلى /guest/s/<site>/wechat/sign فقط عبر POST (الذي يقبله الموزع دون تشغيل عارض صفحة الفشل). أي طلب GET لهذه النقطة النهائية يحمل معامل استعلام page_error=، خاصةً الذي يحتوي على ../ أو %2e%2e أو شرطة مائلة بادئة /، يعتبر شاذًا ويجب معاملته كمحاولة استغلال. يلتقط سجل الوصول القياسي لـ Tomcat سطر الطلب الكامل بما في ذلك سلسلة الاستعلام.

الترخيص

يتم توزيع هذا الكود بموجب ترخيص MIT.

إخلاء مسؤولية قانوني

استخدام هذه الأداة لمهاجمة أهداف دون موافقة مسبقة متبادلة غير قانوني. يتحمل المستخدم النهائي مسؤولية الامتثال لجميع القوانين المحلية والولائية والفيدرالية المعمول بها. لا يتحمل المطورون أي مسؤولية ولا يتحملون أي مسؤولية عن أي سوء استخدام أو ضرر ناتج عن هذا البرنامج.

انظر أيضًا

  • إعلان Ubiquiti SAB-062
  • مدونة Bishop Fox: التحليل الفني الكامل
تنزيل الأداة