利用全流量分析技术发现0Day漏洞事件

任何软件0Day的出现都是迟早的事,这已是不争的事实,但可怕的不是漏洞存在的先天性,而是0Day的不可预知性。于是,越来越多的破解者、黑客们以及商业间谍或情报人员,寻找并利用这些漏洞来得到某种利益。

本案例描述了某大型企业部署网络全流量分析设备后,完整记录了其OA办公系统遭受恶意攻击的全过程。在这起恶性事件中,工程师在进行网络安全分析的过程中发现系统0Day漏洞的过程。

 

案例价值

 

网络全流量分析技术能够帮助用户:
1、“看的全”——不仅仅能够发现常见的异常攻击,同样能够发现新型的未知威胁;
2、“看的清”——帮助用户完整还原攻击行为,分析攻击线索,评估置效果;
3、“看的准”——为后续安全评估及取证提供全量原始数据包取证;

这将赋能网络的全方位安全感知能力,实现网络监测无死角。

 

分析过程

 

分析首次攻击行为

09:00左右
攻击者对OA系统进行爆破攻击,并不停变换互联网地址进行用户名、密码爆破;

图1

09:16:52
发现IP X.X.X.7
链接URL/seeyon/htmlofficeservle进行POST上传操作并成功,如下图:

图2

此时,工程师已经可以确认这是系统存在的一个漏洞,并立即与软件厂商进行沟通,双方对该漏洞看法达成一致后不久,工程师便得到了相应的补丁。

【随后,该软件厂商对外公布了软件存在的一个漏洞,描述如下:“某某OA系统的一些版本存在任意文件写入漏洞,远程攻击者在无需登录的情况下可通过向URL/seeyon/htmlofficeservlet POST精心构造的数据即刻向目标服务器写入任意文件,写入成功后可执行任意系统命令进而控制目标服务器。”】

工程师所发现的“链接URL/seeyon/htmlofficeservlet进行POST上传操作并成功”正是0Day的位置,这是一个典型的0Day漏洞。

当然,这是后话,我们继续看工程师接下来的分析和操作~

通过还原会话流,发现X.X.X.7上传Webshell,并使用变异base64方式加密:

图3

09:17:17及09:17:24
发现X.X.X.7成功连接test123456.jsp,之后执行查看当前用户名的指令,服务器成功返回;

09:19:17
攻击者弃用攻击X.X.X.7,并使用多个IP进行连接Webshell,每个IP仅连接2-4次。经过一系列列目录操作后,将test123456.jsp复制到login-ref1.jsp:

图4

攻击者利用login-ref1.jsp执行命令,将上传的Webshell(test123456.jsp)删除,如图:

图5

执行ShellCode:

图6

通过对上传到服务器的Powershell样本进行分析,确认这是MSF框架生成的payload,cs和msf都能用,cc回连IP是:X.X.X.X:X。由于X.X.X.X/X网段已经被封禁,未能成功回连。

分析第二次攻击行为

18:31
X.X.X.X尝试绕过防护访问/htmlofficeservlet目录,未成功。第二次攻击以/seeyon/js/../htmlofficeservlet进行尝试绕过成功,并再次成功上传相同Webshell,test123456.jsp,如下图:

图7

随即,攻击者不停变换攻击IP,连接Webshell,并且成功进行远程命令执行,通过查看网卡信息、HOST名、列目录等查询当前用户等一系列操作,向互联网对X.X.X.X进行PING操作、Telnet X.X.X.X TCP80端口。

攻击方并试图从X.X.X.X上下载恶意程序,尝试失败后又尝试连接X.X.X.X的Tcp443、8443等端口,由于服务器配置了严格的策略,所有主动外联尝试均未成功。攻击方成功上传she.jsp、shell1.jsp等木马,但是均被发现。

 

事件回顾

 

系统先后经历两次进攻,第一次攻击行为发生后,工程师重启服务器并禁止访问Webshell路径及/seeyon/htmlofficeservlet路径,随后修复补丁;第二次发现攻击行为后,将所有绕过路径进行拦截,清除恶意Webshell,完全修复漏洞及恶意程序。

跳至工具栏