欢迎来到 黑吧安全网 聚焦网络安全前沿资讯,精华内容,交流技术心得!

D-Link NAS, DNS 系列:通过非认证SMB实现存储型XSS

来源:本站整理 作者:佚名 时间:2016-08-31 TAG: 我要投稿

1.前言
D-Link DNS-320是一款NAS网络存储器(http://www.dlink.com/uk/en/support/product/dns-320-2-bay-sharecenter-network-storage-enclosure).
该设备允许用户通过SMB(服务器信息块)访问存储数据,并且可以通过一个web界面对它进行配置。
然而,这个web管理界面包含一个存储型跨站点脚本漏洞,利用的是一个未经身份验证的SMB登录尝试(445/tcp)。当受害者登录web管理界面时,注入的代码就会执行。
这个漏洞可以通过web界面读写设置信息。最终,攻击者可能会获得设备上存储的数据的完整读写权限。
与反射XSS漏洞不同的是,它不需要受害者打开一个攻击者提供的链接或访问恶意网页。这是一个相对少见的XSS漏洞, 不管受害者是直接还是间接地访问有漏洞的web应用程序,恶意代码都可以被注入。因此,即使端口80/tcp(HTTP)和443/tcp(HTTPS)的访问被禁,仍然可以利用这个漏洞。
CVE-ID
目前,MITRE并没有为这个漏洞指定一个CVE-ID,可以参阅下面的链接了解一些背景知识:http://seclists.org/oss-sec/2016/q1/512。
2.漏洞细节
D-Link DNS-320将失败的SMB登录尝试保存在一个日志文件中。当使用一个不存在的用户名进行登陆尝试时,这个用户名会被保存起来,随后未加清理就显示出来。这就是该漏洞利用的注入点。日志文件的内容可以在设备的web界面查看;在一个专门的页面(管理- >系统管理- >日志:
/web/management.html?id=log>)
或在主页上
/web/home.html>
这两个页面都有相同的漏洞,但由于主页在登录成功后会自动加载,所以注入代码会立即运行,不能进行进一步的用户交互。
由于恶意代码使用SMB协议注入,而不是使用导致其最终执行的HTTP协议,因此阻止外部访问web界面并不能防止这个漏洞的利用。
3.漏洞利用/概念证明
由于这个漏洞的本质,自动化地将恶意代码注入到一系列含有此漏洞的设备中是很容易的。
以下两个smbclient命令作为一个概念证明。它们的目的是注入一段代码,用来创建一个使用攻击者选择的密码的新用户。此外,它会向这个新用户提供设备默认共享盘(“Volume_1”) 的读/写权限;默认情况下,可以获得存储在主硬盘驱动器上数据的完整读写权限。
1
smbclient -U '' -N  '\\x\Volume_1' -I
 
smbclient -U '' -N  '\\x\Volume_1' -I
一旦管理员登录到设备的web界面,这段代码将会执行:创建一个使用攻击者选择的密码的新用户,获取共享盘“Volume_1”的读/写权限。
如果想要确认一个设备是否是脆弱型号之一,可以使用rpcclient。在输入querydominfo命令后,可以在“Comment”旁边找到型号名:
[~] $ rpcclient -U "" -N
rpcclient $> querydominfo
Domain:           WORKGROUP
Server:           DLINK-EXXXXX
Comment:    DNS-320
Total Users: 3
[...]
一些读者可能想要验证他们的设备上是否存在该漏洞,但又不想进行配置更改。在这种情况下,可以使用以下命令:
1
smbclient -U 'ab' -N  '\\x\Volume' -I
如果设备的确包含有该漏洞,那么用户在下次登录到设备的web界面时,将会看到一个带有“XSS”字符串的弹出窗口:

4.影响的设备/版本
这个漏洞最初是在一个运行固件版本2.05 b8(也称为:“2.13.0507.2014”)的D-Link DNS-320 rev A的设备上发现的。但是,根据D-Link的消息,以下设备和版本也存在这个漏洞:

此外,早期和后来的版本也有可能受到该漏洞的影响。
5.给终端用户的建议
存在漏洞的设备应该禁止来自不受信任和潜在的恶意网络的访问。如果你觉得这些访问有问题,请立即终止连接。
如果一个存在漏洞的设备没有连接到互联网上,而是存在于本地网络,那么最大的风险可能来自恶意软件,更具体地说是勒索软件。
勒索软件正变得越来越强大,而且这种发展还不受到感染和躲避机制的局限。未来勒索软件可能会适应其周围环境,让自己的影响达到最大化,随后,受害者支付赎金的可能性也会大大增加。
NAS设备通常用于存储用户认为重要的备份数据。本文描述的漏洞可以使得勒索软件在下一次受害者登陆web管理界面时删除NAS设备上的数据。
因此,建议终端用户首先确定自己设备上安装的固件版本是否含有该漏洞,如果有,请及时进行固件更新。
确定当前安装的固件版本
当前安装的固件版本可以通过web管理界面确认。
根据D-Link的未来版本控制系统,也许有必要使用固件的日期来区分是否含有该漏洞。
例如,如果型号是DNS-320 rev A,web界面显示的固件版本是“2.05”,那么含有漏洞的固件版本可以通过显示的日期“05/07/2014”(或更早)来确认:
Current NAS Firmware Version   2.05
Firmware Date      05/07/2014
如果在今年晚些时候发布的固件版本2.05 b99中修复了该漏洞,那么web界面显示的固件版本可能如下所示:
Current NAS Firmware Version   2.05
Firmware Date       12/12/2016
具体含有漏洞的设备和版本请参考第4节。

[1] [2]  下一页

【声明】:黑吧安全网(http://www.myhack58.com)登载此文出于传递更多信息之目的,并不代表本站赞同其观点和对其真实性负责,仅适于网络安全技术爱好者学习研究使用,学习中请遵循国家相关法律法规。如有问题请联系我们,联系邮箱admin@myhack58.com,我们会在最短的时间内进行处理。
  • 最新更新
    • 相关阅读
      • 本类热门
        • 最近下载