abraxaslabs.tech · github.com/abraxas · @abraxas_null · [email protected] · pfsense-uploadconfig
类别: 权限遗留 可达性: 远程
pfSense CE 2.9.0-DEVELOPMENT (9363ac5) - pfsense.org
uploadconfig.php POST config= 调用 config_install() 然后调用 system_reboot()。IDENT 没有 warn-root。diag_backup.php 对同一类别是 warn-root。
| ID | 暂无 CVE |
| 类别 | 权限遗留 |
| 可达性 | 远程(除非另有说明,需已认证 WebGUI) |
| CWE | CWE-269 |
| CVSS | 高危:8.8 CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| 产品 | pfSense CE |
| 受影响版本 | 2.9.0-DEVELOPMENT (9363ac5b8651a1c7a333180425ce7719070f95f9) |
| 认证 | 具有 page-hidden-uploadconfiguration 的 WebGUI 会话 |
| 许可证 | GNU Affero GPL v3.0 |
| 实验环境 | 仅 127.0.0.1 |
我固定了公共 master 9363ac5。实验环境是固定代码行的 PHP gadget,在 127.0.0.1:19030 上使用回环 HTTP。
系列文章:https://abraxaslabs.tech/research/pfsense-ce-leftovers
| 方法 | 汇聚点 | 权限 |
|---|---|---|
| POST uploadconfig.php config= | config_install 然后 system_reboot | 完整性: 实验证明:POST config= 安装了 blob 并设置了重启。不带 POST 的 GET 未安装。 |
| 同一遗留点 | 同一汇聚点 | 侦察: 推断:攻击者选择的 config.xml 即完全接管设备。 |
| 同一遗留点 | 同一汇聚点 | 可用性: 实验证明:请求了重启。 |
需要: page-hidden-uploadconfiguration。除非另有说明,POST 上有 CSRF-magic。WebGUI PHP-FPM 以 root 运行。
需要: page-hidden-uploadconfiguration。除非另有说明,POST 上有 CSRF-magic。WebGUI PHP-FPM 以 root 运行。除非另有说明,POST 上有 CSRF-magic。WebGUI PHP-FPM 以 root 运行。
diag_backup.php warn-root。未认证不适用。
除非该页面也被授予,否则没有 Diagnostics: Command。
cd lab
./run.sh
回环 127.0.0.1:19030。Compose 项目 pfsense-uploadconfig。见证 PFSENSE-UPLOADCONFIG-WITNESS。仅回环:127.0.0.1:19030。Compose 项目 pfsense-uploadconfig。见证 PFSENSE-UPLOADCONFIG-WITNESS。固定代码行的 PHP gadget。运行后栈会拆除。
最后一行:
SUCCESS PFSENSE-UPLOADCONFIG control-no-install=yes trigger-install-reboot=yes ident=page-hidden-uploadconfiguration warn-root=absent PFSENSE-UPLOADCONFIG-WITNESS
为 uploadconfig.php 添加 standard-warning-root,或移除该隐藏页面。
9363ac5b8651a1c7a333180425ce7719070f95f9