本文讲的是Struts2漏洞的前因后果,Apache Struts2 作为世界上最流行的 Java Web 服务器框架之一,近期被爆出两大高危漏洞:S2-045(CVE-2017-5638)和S2-046(CVE-2017-5638)。消息公布后,在互联网界引起了轩然大波。

黑客可通过漏洞远程代码执行

其中编号为CVE-2017-5638的漏洞(S2-045),是基于Jakarta plugin插件的Struts远程代码执行漏洞。该漏洞会造成RCE远程代码执行,恶意用户可在上传文件时通过修改HTTP请求头中的Content-Type值来触发该漏洞,进而执行系统命令,可直接造成系统被控制。黑客通过Jakarta文件上传插件实现远程利用该漏洞执行代码。编号为S2-046的漏洞则是攻击者可通过Content-Length或者Content-Disposition构造恶意的OGNL内容,同样会造成远程代码执行。

此前某东的12GB用户信息数据包在网络上外泄的事件就是源自2013年 Struts 2的安全漏洞造成。泄露的数据包中包括了某东的用户名、密码、邮箱、QQ号、电话号、身份证信息等,其内部数据多达数千万条。某东在2016年12月10日也通过官方微信公众号针对此事件进行了证实与回应。

Struts 作为一个“世界级”开源架构,在我国广泛应用于教育、金融、互联网、通信等重要行业,它的一个高危漏洞危害都有可能造成重大的互联网安全风险和巨大的经济损失。纵观Struts安全问题列表(下图),可以远程代码执行的漏洞竟多达13个(黄色高亮标注)。

以往Struts高危漏洞事件回顾

回顾一下以往Struts的几次重点安全事件,梳理一下Struts危机的来龙去脉,不难发现每一个安全漏洞都可能造成巨大的风险。

2012年,S2-007(S2-XXX是Struts官方自己的漏洞编号,对应的是 CVE-2012-0838)爆发,和S2-003、S2-005的漏洞源头都是一样的,都是struts2对OGNL的解析过程中存在漏洞,导致黑客可以通过OGNL表达式实现代码注入和执行。

受影响版本:Struts 2.0.0 – Struts 2.2.3,需要更新到2.2.3.1。

2013年,S2-016(CVE-2013-2251)和S2-017(CVE-2013-2248)爆发,也是远程代码执行高危漏洞,新闻报道这是黑客的疯狂盛宴。

受影响版本:Struts 2.0.0 – Struts 2.3.15,需要更新到2.3.15.1

2016年,Apache Struts2 服务在开启动态方法调用的情况下可以远程执行任意命令,官方编号 S2-032(CVE-2016-3081)。黑客利用该漏洞,可对企业服务器实施远程操作,从而导致数据泄露、远程主机被控、内网渗透等重大安全威胁。

受影响版本:Struts 2.3.20 – Struts Struts 2.3.28 (except 2.3.20.3 and 2.3.24.3),需要更新到Struts versions 2.3.20.3, 2.3.24.3 or 2.3.28.1。

前文介绍的2017年的两个远程代码执行的高危漏洞S2-045(CVE-2017-5638)和S2-046(CVE-2017-5638)

受影响版本:Struts 2.3.5 – Struts 2.3.31, Struts 2.5 – Struts 2.5.10,需要更新到Struts versions Struts 2.3.32 or Struts 2.5.10.1。

根据Macfee对漏洞传播的研究,黑客对漏洞的利用速度往往高于安全管理人员的防护速度。

因此,怎样在0DAY漏洞爆发后,赶在黑客的狂欢和肆虐前快速“堵住”高危漏洞以完善网络安全对于各行业用户来说至关重要。但是实际情况却让人堪忧。联软近期进行的网络调研结果显示,有相当多企业的安全运维人员不知道自己是否用到了Struts,不知道在自家的网络中哪些设备或服务可能受到攻击,因此在此类漏洞爆发后不仅会面对巨大的压力,同时也不能快速进行针对性的安全加固和危机补救。

面对如Struts漏洞此类安全危机,联软推出基于SCAP(Security Content Automation Protocol)协议和标准开发的UniSIMS服务器安全运维技术解决方案。其提供了智能资产识别和管理能力,以及可以无限扩展的安全检查能力。为此,UniSIMS的解决方案在金融,通信运营商等领域受到客户的一致好评。

快速检查受影响的设备

首先是帮助管理员快速了解网络安全状况,利用UniSIMS的快速安全检查能力,安全管理员可以把Struts漏洞检查规则迅速推向所有的服务器设备,在几分钟之内得到结果,清楚的知晓哪些服务器设备上存在风险。

精准查找风险组件网络位置

UniSIMS可以针对所有服务器进行精细的资产管理,能有效收集和管理服务器上详细的资产信息,细致到WEB中间件使用的架构(例如Struts),以及在中间件上部署哪些应用等。因此,安全管理员可以在管理后台快速的查找出受Struts影响的应用和其版本,了解其部署在哪些中间件上(例如Tomcat或JBOSS)、其运行在那些设备上,以及这些设备的运维负责人。以此来快速的安排漏洞修补和网络加固工作。

在开源组件极其广泛使用的今天,资产深度管理解决方案尤为重要。如曾经带来震撼的OPENSSL漏洞、前段时间的淘宝的FASTJSON组件漏洞等也可以用联软UniSIMS来进行快速定位和防范。与此同时,随着IT架构日益复杂以及业务应用和网络设备的不断增加,管理员需要面对越来越繁杂的运维管理工作,因此需要一个有效的资产管理解决方案来进行管理,让业务安全可控。

原文发布时间为:三月 31, 2017
本文作者:aqniu
本文来自云栖社区合作伙伴安全牛,了解相关信息可以关注安全牛
原文链接:http://www.aqniu.com/threat-alert/23938.html

Struts2漏洞的前因后果相关推荐

  1. struts2漏洞_十大常见web漏洞——命令执行漏洞

    命令执行漏洞在不同框架下都有存在,也是十分普遍且危害极大,下面我们介绍一个最具代表性的,也是影响范围最大的一个命令执行漏洞--Struts2远程代码执行漏洞. Struts2 漏洞介绍 ApacheS ...

  2. 渗透知识-Struts2漏洞

    Struts2漏洞利用实例 如果存在struts2漏洞的站,administrator权限,但是无法加管理组,内网,shell访问500. 1.struts2 漏洞原理:struts2是一个框架,他在 ...

  3. Struts2漏洞导致的反弹shell——青藤云安全使用的是agent进程采集器进行检测

    安全老司机 | Struts2漏洞爆发后,与黑客的一次正面交锋 from:https://zhuanlan.zhihu.com/p/66122521 备注: 青藤云安全:--用的是进程信息采集器 通过 ...

  4. Struts2漏洞为互联网带来严重安全风险

    http://www.cac.gov.cn/2014-04/30/c_1112077812.htm Struts2漏洞为互联网带来严重安全风险 2014年04月30日 14:37:50来源: 工业和信 ...

  5. 【安全漏洞】Struts2漏洞集合总结

    Struts2 漏洞集合 总结了一部分 Strtus2 漏洞,虽然现在这部分的漏洞很少了,但也是学习的一部分,收集的并不全面,后续会做补充. 漏洞环境搭建可以使用在线的 Vulfocus ,或者使用d ...

  6. Struts2漏洞分析之Ognl表达式特性引发的新思路

    摘要 在Ognl表达式中,会将被括号"()"包含的变量内容当做Ognl表达式执行.Ognl表达式的这一特性,引发出一种新的攻击思路.通过将恶意代码存储到变量中,然后在调用Ognl表 ...

  7. Struts2漏洞和Struts Scan工具实战

    一.Apache Struts 2漏洞背景 1.漏洞详情 2017年3月6日,Apache Struts 2被曝存在远程命令执行漏洞.在使用基于Jakarta插件的文件上传功能条件下,恶意用户可以通过 ...

  8. Struts2漏洞爆发 知道创宇云安全已拦截近万攻击样本

    截止到4月27日10:30,知道创宇云安全的CloudEye平台已捕获9810次关于该漏洞的攻击并成功防御. 昨日,Apache Struts2官方发布安全公告, Apache Struts2服务在开 ...

  9. 浅谈struts2漏洞(检测工具及S2-052漏洞及漏洞平台的搭建复现)

    简介: struts2是apache项目下的一个web框架,主要应用于各类门户网站,而相对应的漏洞则是从2007年7月23日发布的第一个Struts2漏洞S2-001到2018年的S2-057,跨度还 ...

最新文章

  1. 2022-2028年中国丝印硅胶行业市场深度分析及投资前景趋势报告
  2. 交叉验证 Cross-validation
  3. MySQL5.5各架构复制
  4. ASP.NET MVC SignalR(1):背景
  5. C - And and Pair
  6. 计算机网络在智能建筑的发展,智能建筑的发展历史和趋势
  7. 数字图像处理 中值滤波 MATLAB实验
  8. 基于mfc的图形学实例_前端图形学(二十)——退后!!我要开始进入3D世界了...
  9. 单片机的各种存储的含义和区别
  10. TeamViewer订阅版上线,正式开售!
  11. 自己动手写CPU之第七阶段(2)——简单算术操作指令实现过程
  12. Windows 7 系统封装文字版 精简教程笔记!
  13. CS229 Lecture 12
  14. 如何修改背景色?证件照背景颜色怎样换成白色?
  15. 一次追踪h5游戏中google广告的经历
  16. 系统的可靠性分析与设计---提高系统可靠性的措施
  17. 【给初学者,大佬见笑】100%成功UEFI安装双硬盘单系统Ubuntu最合理分区安装指南+ubuntu20.04安装
  18. 仪器仪表通讯协议1: CJ/T188水表通讯协议
  19. 提高排名的 15 个基本 SEO 技巧
  20. 计算机技术比武通讯报道,第十六届后勤优质服务月:各部门积极开展技能比武,强化岗位技能,提升服务水平...

热门文章

  1. 我看过的Python方面的好文章
  2. php 云片网对接,php调用云片网接口发送短信的实现方法
  3. Centos7 上安装Docker
  4. hbase建索引java api_hbase java api样例(版本1.3.1,新API)
  5. kivy python 读取oracle数据库_Kivy和Python线程-如何在它们之间获取数据
  6. 消息队列面试经典十连问
  7. Redis为什么又引入了多线程?单线程不香了?
  8. 如何在mac终端上使用python3.5
  9. win10突然只剩下c盘和d盘了_电脑C盘爆满飘红?系统卡?试试这两种解决办法
  10. 使用 OpenCV 和 Python 模糊和匿名化人脸