数据库安全漏洞浅析之Apache Struts2 远程命令执行漏洞
作者:安华金和 发布时间:2017-01-16

2016年4月26日,继2012年Struts2命令执行漏洞大规模爆发后,该服务时隔四年再次爆发大规模漏洞。Apache Struts2官方给出的安全公告中声明:Apache Struts2 服务在开启动态方法调用的情况下可以远程执行任意命令,官方编号 S2-032,CVE编号 CVE-2016-3081。

Apache Struts2是现在互联网行业最流行的java web框架之一,广泛运用于政府、金融、证券、保险等行业,当该漏洞公布短短几小时内,已经有大量的漏洞利用脚本在互联网广为传播,只要Struts2服务开启了动态方法调用,那么漏洞利用者便可以:

·对服务器进行远程操作,将企业的核心环境完全暴露在入侵者眼前

·控制终端主机,如同无形的黑手影响每一笔交易,每一次交互

·威胁核心数据库安全,导致批量数据泄露,敏感信息篡改,传统安全手段形同虚设

此次漏洞的影响范围包括了web服务器、操作系统、数据库服务器三个层面

web服务器

web服务器是本次漏洞攻击首当其的位置,当入侵者利用该漏洞进行攻击时,可从获取合法用户名和密码入手,逐级深入,直至获取web应用服务器的管理权限,甚至在合法的web服务器上注入入侵者自己的应用代码。

操作系统

相比针对web服务器的攻击行为,Struts2漏洞对于操作系统层面的攻击会导致更加严重的后果。入侵者以web服务器为跳板,直接入侵系统内部位于网络防火墙后端的内网主机,不仅可以对内网做出嗅探,还可能对内部应用服务器进行恶意篡改,或者进行恶意挂马。

数据库

当入侵者突破了web应用和内网主机的限制后,数据库服务器就以不设防的形态展现在入侵者面前。入侵者可以获取到应用服务器配置文件中的数据库用户名和密码并直接登录数据库篡改信息,或者将数据库存储文件导出窃取,造成批量数据泄密。 

阿里云平台给出的调研结果,针对该漏洞产生的攻击从26日当日11点开始,在19点呈现爆发趋势,截止26日晚24时,已经统计到的攻击次数突破了26000次,这里面遭受攻击的有企业用户,政府机构,金融行业,虽然官方及时发布了修复补丁和直接拦截该漏洞的防护代码,但是其影响力和造成的破坏却不容我们忽视。