
pfSense CE 2.9.0-DEVELOPMENT - Alta - Remota - Privilegio residual - readonly config_install
abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · pfsense-config-readonly-restore
Clase: Privilegio residual Alcance: Remoto
pfSense CE 2.9.0-DEVELOPMENT (9363ac5) - pfsense.org
write_config respeta user-config-readonly. config_install y config_restore reemplazan config.xml sin esa comprobación.
| ID | sin CVE todavía |
| Clase | Privilegio residual |
| Alcance | Remoto (WebGUI autenticada salvo que se indique lo contrario) |
| CWE | CWE-863 |
| CVSS | Alto: 7.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L |
| Producto | pfSense CE |
| Afectado | 2.9.0-DEVELOPMENT (9363ac5b8651a1c7a333180425ce7719070f95f9) |
| Autenticación | Sesión de WebGUI con a page that can call config_install / config_restore while Deny Config Write is set |
| Licencia | GNU Affero GPL v3.0 |
| Laboratorio | solo 127.0.0.1 |
Fijé el master público 9363ac5. El laboratorio es un gadget PHP del sink fijado, HTTP en loopback sobre 127.0.0.1:19200.
Artículo de la serie: https://abraxaslabs.tech/research/pfsense-ce-leftovers
| Método | Sink | Privilegio |
|---|---|---|
| config_install / config_restore como usuario con Deny Config Write | config_install copia sobre config.xml | Integridad: Probado en laboratorio: write_config denegado; config_install y config_restore igualmente reemplazaron config.xml. |
| mismo residual | mismo sink | Recon: Ninguno mostrado. |
| mismo residual | mismo sink | Disponibilidad: Inferido: una configuración implantada puede reiniciar / bloquear el acceso. |
Requiere: a page that can call config_install / config_restore while Deny Config Write is set. CSRF-magic en POST salvo que se indique lo contrario. WebGUI PHP-FPM es root.
Requiere: a page that can call config_install / config_restore while Deny Config Write is set. CSRF-magic en POST salvo que se indique lo contrario. WebGUI PHP-FPM es root. CSRF-magic en POST salvo que se indique lo contrario. WebGUI PHP-FPM es root.
Las escrituras de configuración normales permanecen denegadas.
Sin Diagnostics: Command a menos que esa página también esté concedida.
cd lab
./run.sh
Loopback 127.0.0.1:19200. Proyecto Compose pfsense-config-readonly-restore. Testigo PFSENSE-CONFIG-READONLY-RESTORE-WITNESS. Solo loopback: 127.0.0.1:19200. Proyecto Compose pfsense-config-readonly-restore. Testigo PFSENSE-CONFIG-READONLY-RESTORE-WITNESS. Gadget PHP de las líneas fijadas. El stack se desmonta tras la ejecución.
Última línea:
SUCCESS PFSENSE-CONFIG-READONLY-RESTORE write-denied=yes install-replace=yes restore-replace=yes PFSENSE-CONFIG-READONLY-RESTORE-WITNESS
Respetar user-config-readonly en config_install y config_restore.
9363ac5b8651a1c7a333180425ce7719070f95f9