Skip to content
KitploitKITPLOIT
أدواتالمدونة
إرسال
أدواتالمدونة
إرسال

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
cve-2026-0300-audit — أداة تدقيق للقراءة فقط لثغرة CVE-2026-0300 (تعرض بوابة مصادقة User-ID في PAN-OS) | Kitploit
أدوات/GitHubGitHub/tailwindrg/cve-2026-0300-audit
أمن البنية التحتية السحابيةتحليل الثغرات الأمنيةالبرمجة النصية والأتمتةتدقيق التكوينأمن الشبكاتDevSecOps
GitHubtailwindrg/cve-2026-0300-audit

cve-2026-0300-audit

أداة تدقيق للقراءة فقط لثغرة CVE-2026-0300 (تعرض بوابة مصادقة User-ID في PAN-OS)

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

الأكثر شعبية

عرض الكل →

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

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

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

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

أدوات تدقيق CVE-2026-0300

أدوات تدقيق للقراءة فقط لـ CVE-2026-0300 — تجاوز سعة المخزن المؤقت غير المُصادق عليه في بوابة مصادقة المستخدمين PAN-OS User-ID (المعروفة سابقًا باسم "Captive Portal") على جدران الحماية من سلسلة PA وسلسلة VM.

يرافق هذا المستودع النشرة الأمنية لمجموعة Tailwind Resource Group TRG-SA-2026-003 ويوفر:

  • audit_portal.py — المستوى 1: تدقيق جدار حماية واحد
  • audit_fleet.py — المستوى 2: مسح شامل للأسطول عبر Panorama (بالتوازي)
  • panos_audit.py — مكتبة مشتركة يستخدمها كلا الأمرين

البرامج النصية للقراءة فقط. تصدر استعلامات من نوع show ضد واجهة برمجة تطبيقات PAN-OS XML ولا تعدّل أي إعدادات أبدًا. يتم إرسال مفتاح API عبر رأس HTTP X-PAN-KEY بدلاً من معامل استعلام في عنوان URL، لذلك لا يظهر في سجلات الوصول لطائرة إدارة PAN، أو سجلات الوكلاء الذين يفحصون TLS، أو وسائط عملية المدقق.

لماذا يوجد هذا

يستخدم سجل CVE اسم الميزة الحديث "بوابة مصادقة المستخدمين User-ID Authentication Portal". لا يزال مخطط XML الخاص بـ PAN-OS، ومقابض سطر الأوامر، ومسارات عناوين URL للتوثيق تستخدم المصطلحات القديمة . المشغّلون الذين يدققون الأسطول باستخدام سيفوتون بصمت كل إعداد لأن هذه السلسلة لا تظهر أبدًا كعنصر إعداد. تبحث هذه الأدوات عن اسم العنصر الصحيح وفقًا للمخطط بغض النظر عن وقت إنشاء الإعداد.

captive-portal
show config running | match authentication-portal

التحليل الكامل من Tailwind حول هذه المشكلة في التسمية موجود في TRG-SA-2026-003، "البصمة القديمة لـ Captive Portal."

المتطلبات

  • Python 3.10 أو أحدث
  • المكتبة القياسية فقط — لا حاجة إلى pip install
  • مفتاح API لـ PAN-OS مع صلاحيات قراءة على جدار الحماية (أو، للمستوى 2، على Panorama)
  • شهادة موقعة من CA (أو موثوقة من المشغّل) على واجهة إدارة جدار الحماية؛ يتم توفير --insecure لعمليات التدقيق الأولية لمرة واحدة فقط

المستوى 1 — جدار حماية واحد

root@kitploit:~
export PAN_API_KEY="<key>"
./audit_portal.py --hostname fw1.example.com

مثال على إخراج الجدول:

root@kitploit:~
vsys: vsys1
  configured:    True
  enabled:       True
  redirect_host: auth-portal.internal.example.com
  mode:          redirect
  bound:         ethernet1/3(internal-trust), ethernet1/4(guest)
  tls_verified:  True
  risk:          EXPOSED_LIKELY

صيغ إخراج أخرى: --output json أو --output csv.

علامات أخرى: --vsys <name> لتدقيق vsys واحد، --timeout/--retries للشبكات البطيئة، --debug لتفاصيل الأخطاء المفصلة على stderr.

المستوى 2 — مسح أسطول Panorama

root@kitploit:~
export PAN_API_KEY="<panorama-key>"
./audit_fleet.py --hostname panorama.example.com --workers 16 --output csv > fleet-audit.csv

كل صف في ملف CSV هو جهاز-vsys واحد مع حالة البوابة، ومضيف إعادة التوجيه، والوضع، وربط الواجهات، وتصنيف المخاطر. يستخدم البرنامج النصي معامل API target=<serial> الخاص بـ Panorama بحيث لا يتصل أبدًا بجدران الحماية المُدارة مباشرة — اتصال واحد بـ Panorama يمسح الأسطول بأكمله.

علامات بارزة:

  • --workers N — خيوط تدقيق متزامنة (الافتراضي 8، الحد الأقصى 32). يكتمل أسطول من 1000 جهاز في دقائق بدلاً من أكثر من ساعة التي قد يستغرقها المسح التسلسلي.
  • --timeout, --retries — إعدادات لكل استدعاء API. يتم إعادة محاولة أخطاء URLError العابرة وأخطاء HTTP 5xx مع تراجع محدود.
  • --exclude-disconnected — افتراضيًا، يتم تضمين الأجهزة غير المتصلة مع risk=DISCONNECTED بحيث تظل مرئية خلال نافذة التصحيح. استخدم هذه العلامة لإسقاطها.
  • --min-expected-devices N — تحذير (على stderr) إذا أعاد Panorama عددًا أقل من الأجهزة من N. مفيد لاكتشاف اقتطاع الاستجابة مقابل حجم أسطول معروف.
  • --serial-filter '0007*' — تصفية بالرقم التسلسلي باستخدام أنماط glob لتدقيق مجموعة فرعية.
  • --debug — طباعة تفاصيل الأخطاء المفصلة لكل جهاز على stderr (تتضمن سلاسل reason من المصدر؛ معطلة افتراضيًا لتجنب تسريب أسماء المضيفين في ملفات CSV الموجهة للعملاء).

تصنيف المخاطر

عمود risk في الإخراج هو أحد القيم التالية:

التسميةالمعنى
INFO_NOT_CONFIGUREDلا توجد كتلة <captive-portal> على الجهاز. خارج نطاق CVE-2026-0300.
INFO_DISABLEDالبوابة مُعدّة ولكن enabled=no. مسار الكود القابل للاستغلال غير نشط.
REVIEW_POLICY_NO_BINDINGSالبوابة مفعّلة، ولكن لا توجد روابط واجهات في الإعداد. تحقق عبر WebUI.
EXPOSED_LIKELYالبوابة مفعّلة ومرتبطة بمنطقة يشير اسمها إلى تعرض غير موثوق (untrust, dmz, guest, external, internet, wan, public). تحقق أولاً.
REVIEW_POLICYالبوابة مفعّلة ومرتبطة بمناطق ذات أسماء داخلية. راجع سياسة الأمان لتأكيد قابلية الوصول.

EXPOSED_LIKELY هي تلميح، وليست حكمًا — أسماء المناطق هي اصطلاحات المشغّل، وليست إنفاذًا. لا يمكن للبرنامج النصي أن يحل محل مراجعة سياسة الأمان؛ فهو يرتب إخراج الأسطول حيث يجب أن يتركز الاهتمام أولاً.

ما تفعله البرامج النصية — وما لا تفعله

تفعل:

  • الاستعلام عن كتل <captive-portal> لكل vsys (اسم عنصر المخطط دائمًا هو captive-portal، بغض النظر عن تسمية الواجهة أو إصدار PAN-OS).
  • الإبلاغ عن مفعّل/معطل، ومضيف إعادة التوجيه، والوضع، وروابط الواجهات المُحللة حسب المنطقة.
  • تصنيف المخاطر بناءً على استدلال اسم المنطقة بحيث تظهر صفوف EXPOSED_LIKELY أولاً في إخراج الأسطول.
  • إرسال مفتاح API عبر رأس X-PAN-KEY بحيث يبقى خارج سجلات وصول URL ووسائط العملية.
  • تحديد حجم جسم الاستجابة (50 ميجابايت) للدفاع ضد هجمات توسيع الكيانات على محلل XML.
  • إعادة محاولة الأخطاء العابرة مع تراجع محدود.

لا تفعل:

  • مراجعة سياسة الأمان بشكل شامل. ما إذا كانت البوابة قابلة للوصول من شبكة غير موثوقة يعتمد على قواعد السياسة، وNAT، وروابط المناطق — يجب على المشغّل إكمال تلك المراجعة من إخراج التدقيق.
  • اختبار قابلية الوصول عبر فحص الشبكة. تدقيق إعدادات خالص فقط.
  • تعديل أي إعداد. جميع استدعاءات API للقراءة فقط.

توليد مفتاح API لـ PAN-OS

يرث مفتاح API الخاص بـ PAN-OS الدور والصلاحيات الخاصة بالمستخدم الذي يولّده.

تحذير مهم: لا توجد صلاحية XML API للقراءة فقط في PAN-OS.

صلاحيات دور المسؤول على علامة تبويب XML API ثنائية (مفعّل/معطل) لكل فئة — Configuration، Operational Requests، Commit، Export، Import، Report، Log، User-ID Agent. تفعيل Configuration لـ XML API يسمح بكل من show وإجراءات set/edit/delete/move/rename/clone. تفعيل Operational Requests يسمح بعمليات <request> عشوائية بما في ذلك <request><restart>. تقدم علامتا تبويب Web UI وREST API خيار Read-Only؛ علامة تبويب XML API لا تقدمه.

"مستخدم تدقيق" تم إنشاؤه بتفعيل فئات XML API هذه يحمل صلاحية كتابة XML API كاملة على الجهاز. تعامل مع المفتاح الناتج كبيانات اعتماد مميزة: حدد عمره لنافذة التدقيق، وخزنه في مدير أسرار، وعطّل المستخدم عند اكتمال العمل.

مرجع PAN الرسمي: Get Your API Key (PAN-OS XML API).

عبر WebUI

على جدار الحماية (أو Panorama، إذا كنت تستخدم audit_fleet.py):

  1. إنشاء دور المسؤول. انتقل إلى Device > Admin Roles (أو Panorama > Admin Roles). انقر Add.

    • سمِّ الدور مثلًا audit-config-and-op.
    • على علامة تبويب Web UI، اضبط كل شيء على None (لا حاجة لوصول واجهة المستخدم لمستخدم التدقيق).
    • على علامة تبويب XML API، فعّل Configuration و Operational Requests. اترك Commit وExport وImport وReport وLog وUser-ID Agent معطلة.
    • انقر OK. يمنح الدور الناتج صلاحية كاملة لـ XML API Configuration وOperational Requests — راجع التحذير أعلاه.
  2. إنشاء مستخدم التدقيق. انتقل إلى Device > Administrators (أو Panorama > Administrators). انقر Add.

    • الاسم: مثلًا audit-cve-2026-0300.
    • عيّن كلمة مرور قوية أو اربط بملف تعريف مصادقة.
    • نوع المسؤول: Role Based ← حدد audit-config-and-op.
    • انقر OK، ثم Commit الإعداد المرشح.
  3. توليد مفتاح API ببيانات اعتماد المستخدم الجديد. لا يعرض PAN-OS زر "توليد مفتاح API" في WebUI — نقطة نهاية keygen هي المسار المدعوم. استخدم جسم POST حتى لا تُسجل بيانات الاعتماد في سجلات وصول URL:

    root@kitploit:~
    read -rs AUDIT_PW; echo
    export PAN_API_KEY="$(curl -ksX POST "https://fw1.example.com/api/" \
      --data-urlencode "type=keygen" \
      --data-urlencode "user=audit-cve-2026-0300" \
      --data-urlencode "password=$AUDIT_PW" \
      | grep -oE '<key>[^<]+' | cut -c6-)"
    unset AUDIT_PW
    

    يقرأ read -rs كلمة المرور دون عرضها على الطرفية ودون وضعها في سجل الأوامر. يقرأ البرنامج النصي PAN_API_KEY الناتج من البيئة ويرسله عبر رأس HTTP X-PAN-KEY — لا تظهر كلمة المرور ولا المفتاح في سجلات وصول URL أو في ps auxww أثناء تشغيل البرنامج النصي.

  4. عطّل المستخدم عند اكتمال أعمال التدقيق. انتقل إلى Device > Administrators، وحدد audit-cve-2026-0300، وانقر Delete (أو عطّل المستخدم). نفّذ Commit. هذا يبطل أي مفاتيح تم توليدها لذلك المستخدم.

ملاحظات التقوية

  • أبقِ كلمة المرور والمفتاح خارج سجل الأوامر. يغطي read -rs كلمة المرور. بالنسبة للمفتاح في PAN_API_KEY، يُفضل تعيينه تفاعليًا عبر المقتطف أعلاه بدلاً من لصقه من ملف. إذا كان يجب استيراده من ملف، استخدم set +o history للجلسة.
  • استخدم شهادة موقعة من CA على واجهة إدارة جدار الحماية. تعطل علامة --insecure في كلا البرنامجين النصيين فحص اسم مضيف TLS والتحقق من الشهادة تمامًا. أي مهاجم على المسار يمكنه تنفيذ هجوم MITM على استجابة التدقيق والإبلاغ عن portal_enabled=False لجهاز مخترق. يتطلب البرنامج النصي audit_fleet.py استخدام --accept-mitm-risk مع --insecure لمسح الأسطول لأن نصف قطر الانفجار لاستجابة مسمومة هو على مستوى الأسطول بأكمله.
  • قم بتدوير المفتاح عند الانتهاء. تعطيل أو حذف مستخدم التدقيق يبطل جميع المفاتيح المولدة تحت ذلك المستخدم.

رموز الخروج

  • 0 — لا توجد بوابة مفعّلة على أي vsys تم تدقيقه
  • 2 — لم يتم العثور على vsys (إعداد عابر أو غير مدعوم)
  • 3 — البوابة مفعّلة على vsys واحد على الأقل (مراجعة مطلوبة)
  • 4 — فشل استدعاء API (مصادقة، TLS، شبكة)

الخروج غير الصفري عند "البوابة مفعّلة" مقصود — يتيح لك ربط البرنامج النصي بخطوط CI / مسح الأسطول التي تحتاج إلى إشارة واضحة.

الترخيص

مرخص بموجب Apache License، الإصدار 2.0. راجع LICENSE للشروط الكاملة.

الاستخدام التجاري مسموح؛ الإسناد مطلوب (الاحتفاظ بإشعار حقوق النشر وملف الترخيص في الأعمال المشتقة).

حقوق النشر 2026 Tailwind Resource Group.

انظر أيضًا

  • TRG-SA-2026-003 — النشرة الأمنية لمجموعة Tailwind Resource Group لـ CVE-2026-0300
  • PAN PSIRT — https://security.paloaltonetworks.com/CVE-2026-0300
  • أفضل ممارسات PAN (تقييد الوصول إلى البوابة) — https://knowledgebase.paloaltonetworks.com/KCSArticleDetail?id=kA14u000000CqbiCAC
  • Tailwind Resource Group — https://tailwindrg.com
تنزيل الأداة