
basado en [EQSTLab](https://github.com/EQSTLab)
Gracias a physicszq, quien descubrió esta vulnerabilidad.
★ CVE-2024-46538 PoC de XSS almacenado en PfSense que conduce a Ejecución Arbitraria de Código ★
CVE-2024-46538 : Vulnerabilidad de XSS almacenado en PfSense
description: Una vulnerabilidad de cross-site scripting (XSS) en pfsense v2.5.2 permite a los atacantes ejecutar scripts web arbitrarios o HTML mediante un payload manipulado inyectado en la variable $pconfig en interfaces_groups_edit.php.
Descargar la versión vulnerable (v2.5.2):
/src/usr/local/www/interfaces_groups_edit.php
if (isset($_POST['members'])) {
$members = implode(" ", $_POST['members']);
} else {
$members = "";
}
...
// Create new group
} else {
$ifgroupentry['ifname'] = $_POST['ifname'];
$a_ifgroups[] = $ifgroupentry;
}
write_config("Interface Group added");
interface_group_setup($ifgroupentry);
header("Location: interfaces_groups.php");
exit;
} else {
$pconfig['descr'] = $_POST['descr'];
$pconfig['members'] = $members;
}
}
La falta de filtrado en la variable $pconfig en interfaces_groups_edit.php conduce a una vulnerabilidad de cross-site scripting (XSS). La vulnerabilidad de cross-site scripting (XSS) permite a los atacantes aprovechar el endpoint diag_command.php para ejecutar comandos arbitrarios contra un administrador. Por ejemplo, el siguiente JavaScript puede conducir a la ejecución arbitraria de código.
Usuario (Con privilegio: WebCfg - Interfaces: Groups: Edit) --(Almacena código JavaScript malicioso)--> Administrador (Con privilegio para ejecutar código) --(Lee interfaces_groups.php)--> Ejecución del código JavaScript --> Ejecución de código
Este repositorio no pretende ser un exploit de XSS para CVE-2024-46538. El propósito de este proyecto es ayudar a las personas a aprender sobre esta vulnerabilidad y, quizás, probar sus propias aplicaciones.