
на основе [EQSTLab](https://github.com/EQSTLab)
Спасибо physicszq, который обнаружил эту уязвимость.
★ CVE-2024-46538 Хранимая XSS в PfSense, приводящая к выполнению произвольного кода PoC ★
CVE-2024-46538 : Уязвимость хранимой XSS в PfSense
описание: Уязвимость межсайтового скриптинга (XSS) в pfsense v2.5.2 позволяет злоумышленникам выполнять произвольные веб-скрипты или HTML через специально созданную полезную нагрузку, внедрённую в переменную $pconfig в файле interfaces_groups_edit.php.
Загрузите уязвимую версию (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;
}
}
Отсутствие фильтрации в переменной $pconfig в файле interfaces_groups_edit.php приводит к уязвимости межсайтового скриптинга (XSS). Уязвимость межсайтового скриптинга (XSS) позволяет злоумышленникам использовать конечную точку diag_command.php для выполнения произвольных команд от имени администратора. Например, следующий JavaScript может привести к выполнению произвольного кода.
Пользователь (имеет привилегию: WebCfg - Interfaces: Groups: Edit) --(Сохраняет вредоносный JavaScript-код)--> Администратор (имеет привилегию на выполнение кода) --(Читает interfaces_groups.php)--> Выполнение JavaScript-кода --> Выполнение кода
Этот репозиторий не предназначен для эксплуатации XSS для CVE-2024-46538. Цель этого проекта — помочь людям узнать об этой уязвимости и, возможно, протестировать свои собственные приложения.