
pfSense CE 2.9.0-DEVELOPMENT - عالية - عن بُعد - بقايا صلاحيات - readonly config_install
abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · pfsense-config-readonly-restore
التصنيف: صلاحية متبقية الوصول: عن بُعد
pfSense CE 2.9.0-DEVELOPMENT (9363ac5) - pfsense.org
يحترم write_config خيار user-config-readonly. أما config_install و config_restore فيستبدلان config.xml دون هذا الفحص.
| المعرّف | لا يوجد CVE بعد |
| التصنيف | صلاحية متبقية |
| الوصول | عن بُعد (WebGUI موثّق ما لم يُذكر خلاف ذلك) |
| CWE | CWE-863 |
| CVSS | مرتفع: 7.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L |
| المنتج | pfSense CE |
| المتأثر | 2.9.0-DEVELOPMENT (9363ac5b8651a1c7a333180425ce7719070f95f9) |
| المصادقة | جلسة WebGUI مع a page that can call config_install / config_restore while Deny Config Write is set |
| الترخيص | GNU Affero GPL v3.0 |
| المختبر | 127.0.0.1 فقط |
ثبّتُّ الفرع العام الرئيسي 9363ac5. المختبر عبارة عن PHP gadget للـ sink المثبّت، عبر HTTP على واجهة الاسترجاع 127.0.0.1:19200.
مقالات السلسلة: https://abraxaslabs.tech/research/pfsense-ce-leftovers
| الطريقة | الـ Sink | الصلاحية |
|---|---|---|
| config_install / config_restore كمستخدم Deny Config Write | ينسخ config_install إلى config.xml | السلامة: مُثبت مختبريًا: رُفض write_config؛ ومع ذلك استبدل config_install و config_restore ملف config.xml. |
| نفس الصلاحية المتبقية | نفس الـ sink | الاستطلاع: لم يظهر شيء. |
| نفس الصلاحية المتبقية | نفس الـ sink | التوافر: مستنتج: يمكن للإعداد المزروع إعادة التشغيل / قفل الوصول. |
يتطلب: a page that can call config_install / config_restore while Deny Config Write is set. حماية CSRF-magic على POST ما لم يُذكر خلاف ذلك. WebGUI PHP-FPM يعمل بصلاحية root.
يتطلب: a page that can call config_install / config_restore while Deny Config Write is set. حماية CSRF-magic على POST ما لم يُذكر خلاف ذلك. WebGUI PHP-FPM يعمل بصلاحية root. حماية CSRF-magic على POST ما لم يُذكر خلاف ذلك. WebGUI PHP-FPM يعمل بصلاحية root.
تبقى كتابات الإعداد العادية مرفوضة.
لا يوجد Diagnostics: Command ما لم تُمنح تلك الصفحة أيضًا.
cd lab
./run.sh
واجهة الاسترجاع 127.0.0.1:19200. مشروع Compose باسم pfsense-config-readonly-restore. الشاهد PFSENSE-CONFIG-READONLY-RESTORE-WITNESS. واجهة الاسترجاع فقط: 127.0.0.1:19200. مشروع Compose باسم pfsense-config-readonly-restore. الشاهد PFSENSE-CONFIG-READONLY-RESTORE-WITNESS. PHP gadget للأسطر المثبّتة. تُفكّك الحزمة بعد التشغيل.
السطر الأخير:
SUCCESS PFSENSE-CONFIG-READONLY-RESTORE write-denied=yes install-replace=yes restore-replace=yes PFSENSE-CONFIG-READONLY-RESTORE-WITNESS
احترام user-config-readonly في config_install و config_restore.
9363ac5b8651a1c7a333180425ce7719070f95f9