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
pfsense-rules-if-xss — pfSense CE 2.9.0-DEVELOPMENT - Media - Remoto - XSS - firewall_rules GET if | Kitploit
Herramientas/GitHubGitHub/abraxas/pfsense-rules-if-xss
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebSeguridad WebPruebas de PenetraciónLabs y Práctica
GitHubabraxas/pfsense-rules-if-xss

pfsense-rules-if-xss

pfSense CE 2.9.0-DEVELOPMENT - Media - Remoto - XSS - firewall_rules GET if

Ver Repositorio
1hace 4 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 - pfsense-rules-if-xss

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  [email protected]  ·  pfsense-rules-if-xss

pfsense-rules-if-xss

Clase: XSS Alcance: Remoto

pfSense CE 2.9.0-DEVELOPMENT (9363ac5) - pfsense.org

firewall_rules.php GET if= se interpola en value="" y iface = "" cuando requirefirewallinterface está activado. Un if desconocido se reemplaza por lan cuando require está desactivado.

IDaún sin CVE
ClaseXSS
AlcanceRemoto (WebGUI autenticada salvo que se indique lo contrario)
CWECWE-79
CVSSMedio: 5.4 CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
ProductopfSense CE
Afectado2.9.0-DEVELOPMENT (9363ac5b8651a1c7a333180425ce7719070f95f9)
AutenticaciónSesión WebGUI con page-firewall-rules
LicenciaGNU Affero GPL v3.0
Laboratoriosolo 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:19140.

Write-up de la serie: https://abraxaslabs.tech/research/pfsense-ce-leftovers

Qué puede hacer un atacante

MétodoSinkPrivilegio
GET firewall_rules.php?if=value="" y JS iface = ""Integridad: Probado en laboratorio: ruptura de comillas en crudo en el atributo oculto y en la cadena JS.
mismo remanentemismo sinkRecon: Inferido: csrf-magic de la víctima / GUI del mismo origen. Cookie httponly SameSite=Strict.
mismo remanentemismo sinkDisponibilidad: Ninguna mostrada.

Requiere: page-firewall-rules. CSRF-magic en POST salvo que se indique lo contrario. WebGUI PHP-FPM es root.

Requiere: page-firewall-rules. 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.

Superficie adyacente que permanece cerrada

Otros hrefs de $if y Location usan htmlspecialchars. require-off reemplaza un if desconocido. No autenticado N/A.

Sin Diagnostics: Command a menos que esa página también esté concedida.

Laboratorio

cd lab
./run.sh

Loopback 127.0.0.1:19140. Proyecto Compose pfsense-rules-if-xss. Testigo PFSENSE-RULES-IF-XSS-WITNESS. Solo loopback: 127.0.0.1:19140. Proyecto Compose pfsense-rules-if-xss. Testigo PFSENSE-RULES-IF-XSS-WITNESS. Gadget PHP de las líneas fijadas. El stack se desmonta tras la ejecución.

Última línea:

SUCCESS PFSENSE-RULES-IF-XSS control-inert=yes trigger-attr=yes trigger-js=yes PFSENSE-RULES-IF-XSS-WITNESS

Corrección

htmlspecialchars($if, ENT_QUOTES) en ambos sinks. Lista de permitidos de if contra las interfaces configuradas.

Referencias

  • github.com/pfsense/pfsense 9363ac5b8651a1c7a333180425ce7719070f95f9
  • CWE-79
  • Serie: https://abraxaslabs.tech/research/pfsense-ce-leftovers
Descargar herramienta