在真实的网络攻击中,攻击者常常使用团伙的方式进行攻击。团伙通常分为两种,一种是攻击方式相同,使用相同的攻击方式,漏洞利用方式等等对不同或者相同的资产目的进行攻击,这种攻击团伙具有相同的攻击战术,甚至使用相同的脚本和漏洞,IP处在相同的网段等,这些相对来说比较容易识别。另外一种是具有分工明确的团伙,在攻击的每个阶段都有不同的成员负责不同的攻击阶段,这种团伙由于其攻击阶段不具备溯源性,团伙的隐蔽性较高,则较难发现和识别。无论是使用相同方式还是分工合作,团伙攻击的一个较大共性就是更加具有隐蔽性。
下面介绍对抗中记录的一次团伙发现过程,并就此思考总结了对攻击战术研究的重要性。
团伙攻击分析思路
个人攻击方式发现
本次分析团伙的思路主要是基于第一种,是通过对团伙的攻击方式,攻击的资产范围,以及本身的ip地址范围等特征的分析发现的。在攻击的初始,发现了第一个属于攻击团队的攻击方式(10.70.40.1xx),以及其账号,名称ip等等,对此账号的ip,动作等特征进行记录,确认方式部分截图(证据)如下。
- 攻击行为概览
- SQL注入
- Webshell后门访问
- 远程携带脚本
- 攻击线路尝试分析
分析其攻击路线和攻击手段如下,其攻击的方式目的明确,方法也比较成熟,因此认定这个攻击者是一个值得关注的攻击者,但此时并未发现团伙特征。
团伙攻击发现
随着攻击的持续,在后序接连发现了具有相似攻击模式的攻击者,同时发现其ip与最初攻击者的ip所属的域名相同,因此对攻击方式进行了详细的分析和统计,得到结果如下(部分信息以xx代替表示不同的字符,yy代替相同字符)。
- 多攻击者属于同网段、同位置
攻击者ip | 姓名 | 位置 |
10.70.40.1xx | x杰 | 研发中心1 |
10.70.40.1xx | xx辉 | 研发中心1 |
10.70.40.1xx | Xxx | unsure |
- 攻击目标相似性
攻击者ip | 攻击目标范围 |
10.70.40.1xx | 192.1yy.1.* |
10.70.40.1xx | 192.1yy.1.* |
10.70.40.1xx | 192.1yy.2.*、192.1yy.18.* |
- 攻击手法相似性
攻击者ip | 触发的告警、事件概述 |
10.70.40.1xx | Weblogic漏洞攻击、SQL注入、Webshell |
10.70.40.1xx | Weblogic漏洞攻击、SQL注入Webshell |
10.70.40.1xx | Webshell、文件上传漏洞、SQL注入、 |
- 使用的工具相似性
攻击者ip | 使用的工具名称(如上传文件名称等) |
10.70.40.1xx | 使用相同的webshell脚本:/_async/webshell.jsp、/JspSpy.jsp、/OA_HTML/OA.jsp |
10.70.40.1xx | 使用相同的webshell脚本:/x.php、/upload/test.php、/upload/1.php、/test.jsp、/test.aspx、/test.asp、/spy.aspx、/_async/shell.jsp、/shell.php、/psquare/x.jsp、/maintenance/test.php等 |
10.70.40.1xx | Webshell脚本:/test.php、/x.php、/upload/1.php、/upload/test.php、/test.jsp、/test.aspx、/test.asp、/spy.aspx、/shell.php、/psquare/x.jsp、/maintenance/test.php、/aspxspy.aspx、/bea_wls_internal/a2e2gp2r2/x.jsp、/adminer/adminer.php |
总结和思考
上述的分析方式时基于第一种攻击团伙的攻击思路下实现的,也就是说,我们事先知道存在这种特征的攻击方式的团伙,就能结合现有的结果进行推断并主动溯源,实际上这是一种实用且比较理想的攻击检测方式,这次团伙发现给我的启示更多的是对攻击战术的理解。
攻击战术的重要性
所谓攻击战术,从本例的发现可以看出,团伙的ip,攻击的目的ip实际上都是变量,只是因为在理想环境下具有一定的关联,实际的攻击中,ip,资产等信息通产不具有可溯源性,因为ip和资产信息可以被伪造,跳板机等的存在,也会造成干扰,而只有攻击的战术,也就是攻击手段,使用的脚本是一个不变的量,可以作为一个稳定的团伙发现因素,造成这种原因就是,一般来说更换ip和资产等信息,对攻击者来说比较容易,但是更换一套切实有效的战术,实际的消耗是比较大的,因此可以认为对攻击者来说,攻击战术和攻击工具是他们最不愿意替换的,因为其费时费力,同时切实有效的攻击方式有限。
攻击识别引擎的思考
通过这次实战分析,我对攻击识别引擎的原理有了一些更切实体会,我认为目前我们的引擎需要引进对攻击战术的思考,目前攻击识别引擎除了需要提升其事件检测的广度和准确度,相应的,也需要考虑在事件检测的后期,是否也可以做一个综合分析的模块,比如存储一些典型的团伙攻击特征,在一个更大的时间跨度内,使用检测的事件对团伙特征进行匹配,可以在团伙分析上提供新的思路。
除了团伙分析,之前读过的一篇文章也提到了攻击战术在APT检测中的应用,我当时读这篇文章实际上对于战术的理解没有那么深刻,觉得作者的理解略微有些理想化,偏向于一种模型,结合此次分析再回过头重新读了那篇文章,认识到攻击战术这一部分的虽然存在很多挑战,但是在提升引擎检测能力上来看,是值得投入和研究的。
附上文章链接,建议收藏阅读: