
pfSense CE 2.9.0-DEVELOPMENT - عالية - عن بُعد - حقن الإعدادات - CP maxprocperip nginx
abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · pfsense-cp-maxprocperip
الفئة: حقن الإعدادات الوصول: عن بُعد
pfSense CE 2.9.0-DEVELOPMENT (9363ac5) - pfsense.org
فحص العدد الصحيح يتم على maxproc الخاص بـ POST غير المستخدم. يتم تخزين maxprocperip كما هو وإصداره كـ limit_conn addr $maxprocperip; داخل server{}. يتم قبول location/alias إضافي.
| المعرّف | لا يوجد CVE بعد |
| الفئة | حقن الإعدادات |
| الوصول | عن بُعد (WebGUI مُصادَق عليه ما لم يُذكر خلاف ذلك) |
| CWE | CWE-94 |
| CVSS | مرتفع: 7.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:L |
| المنتج | pfSense CE |
| المتأثر | 2.9.0-DEVELOPMENT (9363ac5b8651a1c7a333180425ce7719070f95f9) |
| المصادقة | جلسة WebGUI مع plant with page-services-captiveportal; then unauth on the portal listener |
| الترخيص | GNU Affero GPL v3.0 |
| المختبر | 127.0.0.1 فقط |
ثبّتُ الفرع الرئيسي العام 9363ac5. المختبر عبارة عن أداة PHP للحاقن المثبّت، HTTP عبر الاسترجاع المحلي على 127.0.0.1:19120.
مقالات السلسلة: https://abraxaslabs.tech/research/pfsense-ce-leftovers
| الطريقة | الحاقن | الصلاحية |
|---|---|---|
| POST services_captiveportal.php maxprocperip، ثم GET غير مُصادَق عليه لـ portal vhost | system_generate_nginx_config limit_conn addr $maxprocperip; | السلامة: مُثبت مختبريًا: location /p { alias /oracle/; } إضافي داخل CP server{}. نجح nginx -t. |
| نفس البقايا | نفس الحاقن | الاستطلاع: مُثبت مختبريًا: GET غير مُصادَق عليه لذلك الموقع أعاد الملف المزروع على portal vhost، وليس على الواجهة الرسومية. لم يُثبت RCE على المضيف. |
| نفس البقايا | نفس الحاقن | التوافر: مُستنتج: nginx غير صالح يفشل في تشغيل تلك المنطقة. |
يتطلب: plant with page-services-captiveportal; then unauth on the portal listener. CSRF-magic على POST ما لم يُذكر خلاف ذلك. WebGUI PHP-FPM يعمل بصلاحيات root.
يتطلب: plant with page-services-captiveportal; then unauth on the portal listener. CSRF-magic على POST ما لم يُذكر خلاف ذلك. WebGUI PHP-FPM يعمل بصلاحيات root. CSRF-magic على POST ما لم يُذكر خلاف ذلك. WebGUI PHP-FPM يعمل بصلاحيات root.
GUI nginx (captive_portal=false). زرع غير مُصادَق عليه. RCE على المضيف.
لا يوجد Diagnostics: Command إلا إذا كانت تلك الصفحة ممنوحة أيضًا.
cd lab
./run.sh
الاسترجاع المحلي 127.0.0.1:19120. مشروع Compose pfsense-cp-maxprocperip. الشاهد PFSENSE-CP-MAXPROCPERIP-WITNESS. الاسترجاع المحلي فقط: 127.0.0.1:19120. مشروع Compose pfsense-cp-maxprocperip. الشاهد PFSENSE-CP-MAXPROCPERIP-WITNESS. أداة PHP للأسطر المثبّتة. يتم تفكيك الحزمة بعد التشغيل.
السطر الأخير:
SUCCESS PFSENSE-CP-MAXPROCPERIP control-limit-conn=yes nginx-t-control=yes trigger-inject=yes nginx-t-trigger=yes host-read=yes fail-to-start=no PFSENSE-CP-MAXPROCPERIP-WITNESS
is_numericint maxprocperip. ارفض الأقواس المعقوفة/الفواصل المنقوطة.
9363ac5b8651a1c7a333180425ce7719070f95f9