Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
opnsense-tunables-loader — OPNsense 26.7.6 - Alta - Remota - Inyección de línea de configuración - cargador de tunables | Kitploit
Herramientas/GitHubGitHub/abraxas/opnsense-tunables-loader
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebAuditoría de ConfiguraciónVirtualización de SeguridadPruebas de PenetraciónLabs y Práctica
GitHubabraxas/opnsense-tunables-loader

opnsense-tunables-loader

OPNsense 26.7.6 - Alta - Remota - Inyección de línea de configuración - cargador de tunables

Ver Repositorio
18hace 9 díasAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

Abraxas Labs - opnsense-tunables-loader

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  opnsense-tunables-loader

Análisis: https://abraxaslabs.tech/research/opnsense-tunables-loader

opnsense-tunables-loader

Clase: Inyección de línea de configuración Alcance: Remoto

Núcleo de OPNsense 26.7.6 (a842fe48) - opnsense.org

System: Advanced: Tunables sigue interpolando nombre/valor en /boot/loader.conf. Residuo hermano de GHSA-fq94. Tunables.xml tunable / value son TextField sin restricciones (saltos de línea permitidos). system_login_configure() escribe {$param}="{$value}". La reconfiguración de Tunables también reinicia login. El sysctl(8) en vivo pasa por shell_safe más un filtro de OID, por lo que ese salto no es inyección de shell. El residuo son directivas de loader adicionales en el siguiente arranque. El privilegio es page-system-advanced-sysctl, no page-all.

Este paquete de GitHub permanece privado hasta la divulgación coordinada.

IDaún sin CVE
ClaseInyección de línea de configuración
AlcanceRemoto (WebGUI / API autenticado)
CWECWE-93
CVSSAlto: 8.1 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
ProductoOPNsense core
Afectado26.7.6 (a842fe48c21288d11a422cb944678e8eb308becf) System: Advanced: Tunables
AutenticaciónSesión WebGUI o clave API con page-system-advanced-sysctl
LicenciaGNU Affero GPL v3.0
Laboratoriocompose exec gadget (hunt slot 18850)

Fijé la etiqueta 26.7.6 peel a842fe48. El laboratorio es un gadget PHP de la interpolación fijada de system_login_configure(). Proyecto compose opnsense-tunables-loader. Hunt slot 18850 en la familia de gadgets 18800-18860; este archivo compose usa docker compose exec php, no un bind HTTP publicado.

Qué puede hacer un atacante

MétodoSinkPrivilegio
Valor de Tunables con CR/LF (hw.usb.no_boot_wait más "\n# witness)fijar línea extra en system_login_configure() en /boot/loader.confIntegridad (probado en laboratorio): # OPNSENSE-TUNABLES-LOADER-WITNESS extra en su propia línea tras una asignación cerrada. Laboratorio: newline-extra-line=yes.
Valor limpio 1mismo escritorNegativo (probado en laboratorio): línea de asignación única, sin witness. Laboratorio: clean-value-single-line=yes.
Las mismas líneas de loader extra en el siguiente arranqueloader init_path / module_path / *_load / vfs.root.mountfrom / consolaIntegridad (inferido): el loader del siguiente arranque respeta las claves del atacante. No se reinició en este gadget.
Líneas de loader basura / vfs.root.mountfrom incorrecto/boot/loader.confDisponibilidad (inferido): fallo de arranque o root incorrecto.
POST /api/core/tunables/searchItemAPI de tunablesRecon (inferido): listar tunables, incluyendo actual/por defecto/tipo. Previsto para esta ACL.
sysctl -w en vivo de un OID válidoset_sysctl + filtro de OIDTarea prevista de la página. Las líneas de loader extra son el residuo.

Probado en laboratorio vs inferido: la línea de loader extra por salto de línea y el valor limpio de una sola línea son ÉXITO en laboratorio. La aplicación del loader en el siguiente arranque es inferida. Gadget, no una VM FreeBSD completa de OPNsense.

Requiere: usuario con sesión iniciada o la clave API Local de ese usuario con page-system-advanced-sysctl y sin page-all. POST /api/core/tunables/*. CSRF en POST de sesión. La reconfiguración reinicia login; rc.reload_all y el arranque también llaman a system_login_configure.

Superficie adyacente que permanece cerrada

SuperficieLaboratorio
Inyección de shell en sysctl en vivoshell_safe más filtro de OID
Valor limpiolínea de asignación única
Sin autenticación401
Usuario sin page-system-advanced-sysctl403
user-config-readonlysave() lanza excepción
Administrador de parámetros ajustables con page-all estableciendo un OID realprevisto
Campos de texto de la GUI parcheados por GHSA-fq94sumideros diferentes; este campo no fue nombrado

Sin autenticación. Sin shell de sysctl en vivo. Sin Diagnostics: Command.

Laboratorio

cd lab
./run.sh

Proyecto Compose opnsense-tunables-loader. Testigo OPNSENSE-TUNABLES-LOADER-WITNESS. Última línea:

SUCCESS opnsense-tunables-loader newline-extra-line=yes clean-value-single-line=yes OPNSENSE-TUNABLES-LOADER-WITNESS

Lanzador raíz: python3 opnsense-tunables-loader-Abraxas-Labs.py.

La corrección

Eliminar CR/LF y " del nombre y el valor de los tunables, misma clase que GHSA-fq94. Tipar el nombre como una máscara OID, no como un TextField sin formato. Entrecomillar con un helper que no pueda cerrar la asignación. No escribir un tunable en /boot/loader.conf a menos que sea una clave de loader conocida.

Referencias

  • github.com/opnsense/core a842fe48c21288d11a422cb944678e8eb308becf
  • system.inc interpolación de loader.conf en system_login_configure
  • Tunables.xml nombre/valor como TextField sin formato
  • Hermano (otros campos de texto de la GUI, no este sink): GHSA-fq94
  • CWE-93
Descargar herramienta