希捷科技(Seagate)成立于1979年,是著名的硬盘和存储解决方案供应商。最近安全专家在希捷网络附加存储(NAS)设备上发现了一个高危0day漏洞,攻击者可以未经授权远程执行恶意代码,获得设备Root权限。
安全研究人员OJ Reeves发现无论是在家庭网络还是在公司网络中,希捷网络附加存储(NAS)设备都会受0day远程代码执行漏洞的影响。目前已经有超过2500台设备暴露在了危险之中。
希捷的网络附加存储(NAS)设备是一种网络管理应用程序,管理员通常会用它添加用户、设置访问权限、管理文件等。本次的远程代码执行漏洞出现在2014.00319版本的固件上,攻击者可以在没有认证的情况下远程执行命令,获取设备root权限。
希捷NAS存在一个web形式的管理界面,当管理员登录后可以通过它进行一些操作,比如添加用户,设置访问控制,管理文件等等。
该web应用程序使用了3个核心技术组件: 5.2.13版的PHP、2.1.0版的CodeIgniter、1.4.28版的Lighttpd,遗憾的是这些版本早已过时。
常用的web应用程序一般会基于浏览器中的cookies验证登录的用户,主要从下面三个参数中验证:
username:输入用户名 is_admin:用户是否是管理员(yes或者no) language:选择一种语言
如果攻击者想要利用这一漏洞,首先他需要和受害者设备使用同一网络,这样攻击者无需登录就可获得受害者设备的root访问权限。一旦用户名cookies建立成功,攻击者即可轻而易举的利用它。is_admin参数的变量可被设置为“Yes”,这样攻击者即可在web应用程序上权限提升。此外攻击者还可以通过Language参数利用本地文件中存在的漏洞。
2014.00319版本的企业存储2-Bay NAS 2013.60311版本的企业存储2-Bay NAS
2014.00319之前的所有版本可能都受该漏洞的影响。
研究者已经把Metasploit组件和python脚本放到了Github上,其中的每一个脚本都可执行以下命令:
1、连接存在漏洞的NAS设备并提取ci-session cookies 2、用静态加密密钥解密上述cookie并提取PHP hash值 3、修改序列化的PHP hash值,然后把用户名设置成管理员,is_admin字段设置成“yes” 4、解密更新后的PHP hash值,以作为ci-session cookies进一步使用 5、执行请求以提取主机配置信息,例如设备的描述等 6、修改主机配置信息,使其包含一个小而精的有效负荷 7、用新数据更新主机配置数据 8、再次修改PHP hash值,使得语言参数中包含../../../../etc/devicedesc/x00字段 9、解密新的PHP hash值,以作为ci-session cookies进一步使用 10、用前面生成的cookies向NAS发送一个请求,激活硬盘上写入的有效负荷 11、执行一个请求,使主机配置返回到之前的版本
希捷公司目前并没有对固件进行更新,也就是说当前其设备还是受0day漏洞的影响。建议用户不要使用公共网络访问设备,而且最好再对设备设置防火墙策略,以确保只有受信任的IP地址才可接入。
[参考来源 thehackernews ,转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)]