
basato su [EQSTLab](https://github.com/EQSTLab)
Un ringraziamento a physicszq, che ha scoperto questa vulnerabilità.
★ CVE-2024-46538 XSS persistente in PfSense che porta all'esecuzione arbitraria di codice PoC ★
CVE-2024-46538 : Vulnerabilità XSS persistente in PfSense
descrizione: Una vulnerabilità di cross-site scripting (XSS) in pfsense v2.5.2 consente agli attaccanti di eseguire script web arbitrari o HTML tramite un payload appositamente predisposto iniettato nella variabile $pconfig in interfaces_groups_edit.php.
Scarica la versione vulnerabile (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 mancanza di filtraggio nella variabile $pconfig in interfaces_groups_edit.php porta a una vulnerabilità di cross-site scripting (XSS). La vulnerabilità di cross-site scripting (XSS) consente agli attaccanti di sfruttare l'endpoint diag_command.php per eseguire comandi arbitrari nei confronti di un amministratore. Ad esempio, il seguente JavaScript può portare all'esecuzione arbitraria di codice.
Utente (con privilegio: WebCfg - Interfaces: Groups: Edit) --(Memorizza codice JavaScript malintenzionato)--> Amministratore (con privilegio di eseguire codice) --(Legge interfaces_groups.php)--> Esecuzione del codice JavaScript --> Esecuzione di codice
Questo repository non è inteso come exploit XSS per CVE-2024-46538. Lo scopo di questo progetto è aiutare le persone a conoscere questa vulnerabilità e, magari, testare le proprie applicazioni.