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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
pfsense-api-export-key-get — pfSense Plus MIM API toolkit b4acd7ca - عالي - عن بُعد - صلاحيات متبقية - GET export-key مفاتيح خاصة | Kitploit
أدوات/GitHubGitHub/abraxas/pfsense-api-export-key-get
المصادقة والترخيصتحليل الثغرات الأمنيةالاستغلالجمع المعلوماتأمن الويباختبار الاختراقالأوراق والأبحاثأمن واجهات برمجة التطبيقات

الأكثر شعبية

عرض الكل →

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

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

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

عرض جميع الأدوات →
مشاركة
GitHub
abraxas/pfsense-api-export-key-get

pfsense-api-export-key-get

pfSense Plus MIM API toolkit b4acd7ca - عالي - عن بُعد - صلاحيات متبقية - GET export-key مفاتيح خاصة

عرض المستودع
1منذ يوم واحدلم تتم المراجعة بعد

Abraxas Labs - pfsense-api-export-key-get

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  pfsense-api-export-key-get

pfsense-api-export-key-get

الفئة: صلاحية متبقية الوصول: عن بُعد

pfSense Plus MIM API (Netgate) عند الالتزام b4acd7ca - OpenAPI عام + عميل Python مُولَّد لوحدة تحكم Nexus Multi-instance Management.

GET /system/certauth/{refid}/export-key موثّق بأنه "Download the CA certificate signing key". GET /system/certificates/{refid}/export-key هو "Download the certificate's private key". GET /system/certificates/{refid}/export-p12 هو ملف PKCS12 موحّد بدون حماية بكلمة مرور. توثّق الوثائق GET تحت /system إلى mim_system_read / mim_read_system. mim_view موثّق بأنه لا يحتوي على معلومات سرية. لا يحتوي المواصفة على securitySchemes ولا أمان لكل عملية. _get_kwargs المُولَّد هو الطريقة بالإضافة إلى URL بين علامتي اقتباس. لا يُضاف التفويض هناك أبدًا.

هذا ليس php، وليس shell، وليس POST للبرنامج الثابت. يكفي JWT مسروق من عيّنة G9 لتخطي TLS أو رمز أسطول G6 لاستدعاء طلبات GET هذه. ما إذا كان JWT لـ MIM بشكل قراءة كافٍ على Plus هو الصلاحية المتبقية. لم أشغّل Plus. لم يُنفَّذ RBAC الخاص بـ Plus.

المعرّفلا يوجد CVE بعد
الفئةصلاحية متبقية
الوصولعن بُعد (HTTP موثّق إلى وحدة تحكم Nexus؛ المختبر هو عقد العميل العام)
CWECWE-200، CWE-862
CVSSمرتفع: 8.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N إذا كان JWT لـ MIM بشكل قراءة قادرًا على استدعاء طلبات GET هذه
المنتجNetgate/pfsense-api (وحدة تحكم pfSense Plus Nexus MIM OpenAPI + العميل المُولَّد)
المتأثرالالتزام b4acd7ca21dbca739a530403a1f62a7440f7726f (2026-05-25). OpenAPI 3.0.3 بعنوان pfSense API الإصدار 1.0. Plus 25.11+. ليس حزمة CE REST.
المصادقةNexus JWT موثّق (POST /login، Bearer). المختبر هو OpenAPI العام بالإضافة إلى عقد _get_kwargs المُولَّد. لم يُنفَّذ RBAC الخاص بـ Plus.
الترخيصGNU Affero GPL v3.0
المختبر127.0.0.1:19141 فقط. لا توجد صورة Plus.

ثبّتُّ github.com/Netgate/pfsense-api عند b4acd7ca21dbca739a530403a1f62a7440f7726f. ليس master بعد ذلك اليوم. وليس حزمة CE من طرف ثالث jaredhendrickson/pfsense-api.

مركز السلسلة: pfsense-api-nexus-mim. هذه الحزمة هي الجزء 4.

ما يمكن للمهاجم فعله

توثّق الوثائق GET تحت /system إلى mim_system_read / mim_read_system. mim_view موثّق بأنه لا يحتوي على معلومات سرية. الصلاحية المتبقية هي تصدير المفتاح الخاص عبر GET، مع توثيق PKCS12 بأنه غير محمي، و_get_kwargs المُولَّد الذي لا يضيف التفويض أبدًا.

الطريقةالمسارالصلاحية
GET DownloadCAKey/system/certauth/{refid}/export-keyاستطلاع (مُثبت مختبريًا على mock): جسم application/octet-stream يحتوي على شهادة PEM الشاهدة. مُستنتج على Plus: مفتاح توقيع شهادة CA إذا سمح RBAC بعملية GET.
GET GetCertKey/system/certificates/{refid}/export-keyاستطلاع (مُثبت مختبريًا على mock): شهادة PEM الشاهدة. مُستنتج على Plus: المفتاح الخاص للورقة.
GET GetCertP12/system/certificates/{refid}/export-p12استطلاع (مُثبت مختبريًا على mock): نفس جسم الشهادة الشاهدة. مُستنتج على Plus: الشهادة مع المفتاح بصيغة PKCS12 دون حماية بكلمة مرور (ملخص OpenAPI).
_get_kwargs المُولَّدالعمليات الثلاث جميعهااستطلاع (مُثبت مختبريًا): الوسائط هي method بالإضافة إلى url المُقتبس فقط. لا headers، لا Authorization، لا Bearer.
Client (بدون رمز)العمليات الثلاث جميعهااستطلاع (مُثبت مختبريًا): ثلاث إصابات على mock مع has_authorization=false وجسم الشهادة الشاهدة (client-no-auth=yes، witness-body=yes).
AuthenticatedClientالعمليات الثلاث جميعهااستطلاع (مُثبت مختبريًا): ثلاث إصابات على mock مع Authorization: Bearer mock-token (authed-bearer=3). Bearer خاصية غلاف، وليس _get_kwargs.
JWT مسروق من G9 MITM، أو رمز أسطول G6نفس عمليات GET الثلاث، بالإضافة إلى /api/device/pfsense/{device_id}/api إذا كان المتبقي من الأسطول يحملهاستطلاع (مُستنتج، متسلسل): اسحب مفاتيح CA / الورقة للمتحكم وكل نسخة مُسجَّلة يمكن للرمز تسميتها.
استخدام مفاتيح CA / الورقة المسروقةشهادات TLS وVPN وIPsec وWebGUIسلامة (مُستنتج، غير مُختبَر): أصدر شهادات منحدرة بصفتك CA؛ انتحل اسم Nexus TLS؛ فك تشفير الأنفاق التي تستخدم تلك الشهادات. ليس صلاحية root على Unix بحد ذاتها.
عمليات GET المرتبطة للقوائم/التفاصيل/system/certauth?withprivkey=true، حقول الشهادة prv / private_keyاستطلاع (مواصفة، ليس هذا المختبر): تفريغ جماعي لنفس الأسرار. لم يُختبر هنا.

التوافر: لا شيء مطلوب.

مُثبت مختبريًا مقابل مُستنتج: مسارات GET الثلاثة في OpenAPI، عبارة PKCS12 "دون حماية بكلمة مرور"، _get_kwargs بدون Authorization، ثلاث إصابات Client بدون مصادقة مع شهادة PEM الشاهدة، ثلاث إصابات AuthenticatedClient مع Bearer، ونسخة pin من pfapi_openapi.yml كلها مُثبتة مختبريًا. أما استجابات 200 لـ mim_system_read / mim_view على Plus، وإصدار شهادات منحدرة، وسحب المفاتيح على مستوى الأسطول فهي مُستنتجة. كما أن RBAC على Plus لم يُنفَّذ.

المتطلبات (مُستنتجة، Plus لم يُنفَّذ): تسجيل دخول Nexus بالإضافة إلى مجموعة مسموح لها بعملية GET تحت /system/certauth و/system/certificates. ليس admins / mim_superuser إذا كان المتبقي حقيقيًا. ليس Diagnostics: Command. مسار شبكة إلى المتحكم :8443 (أو وكيل الجهاز) مع JWT.

السطح المجاور الذي يبقى مغلقًا

السطحالسبب
RBAC على Plusلم يُنفَّذ. هذه الحزمة لا تدّعي استجابة 200 حية على Plus لـ mim_system_read أو mim_view.
POST /diag/cmd/php، POST /diag/cmd/shell، GET/POST /diag/cmd/download /upload /diag/editfileالمقصود Diagnostics: Command. بشكل superuser. ليس هذا المتبقي.
POST /system/firmwareالمقصود تعديل النظام / superuser.
GET .../export-ca وGET .../export-certشهادة PEM عامة. مقصود.
POST .../export-key وPOST .../export-p12 مع كلمة مرور بصفتك superuserالغلاف المقصود. واجهة system_certmanager.php تصدّر المفاتيح بهذه الطريقة بالفعل.
من الإنترنت غير المُصادَق إلى 8443تسجيل الدخول لا يزال يصدر JWT. غياب securitySchemes في OpenAPI هو خطأ في المُولِّد، وليس خادمًا غير مُصادَق مُثبتًا.
حزمة CE jaredhendrickson/pfsense-api / pfrest.orgمنتج مختلف.
القيمة الافتراضية verify_ssl في المكتبة المُولَّدةTrue. الأمثلة الرسمية تضبطها على False. هذا G9، وليس عملية GET هذه.

كيف وجدته

ثبّتُّ b4acd7ca21dbca739a530403a1f62a7440f7726f بعد موجة pfSense CE 2.9.0-DEVELOPMENT وقرأت مسارات مدير الشهادات في pfapi_openapi.yml. ثلاث عمليات GET تصدّر المفاتيح الخاصة. ملخص GetCertP12 يقول دون حماية بكلمة مرور. DownloadCAKey هي GET فقط بدون غلاف. الوحدات المُولَّدة تكتب client: AuthenticatedClient | Client و_get_kwargs لا تضبط Authorization أبدًا.

تنزيل الأداة