2021HVV之蓝队日志分析技巧

  • A+
所属分类:安全文章

2021HVV之蓝队日志分析技巧

随着网络安全态势逐渐严峻,网络威胁开始关系到关键基础设施和国计民生,网络安全问题上升为国家安全层面的挑战。为了落实“实战化、常态化、体系化”的关键基础设施保护体系要求,2016年起,越来越多的行业和安全厂商加入到攻防演练中,定期操演,暴露隐患,培养能打硬仗的专业后备力量。

作为演练中重要的角色之一——防守方,其主要职责是负责攻防演练中的防守。依托参演单位现有网络安全防御体系,完成实战中的网络安全事件监测、预警、分析、验证、溯源和处置。其中,对威胁的有效识别和及时响应,是防守方工作中最重要的一环,新华三安全攻防实验室结合多年经验,输出防守方演练攻略之日志分析技巧,以供分享探讨。


总体思路





NGFW、IPS、WAF、蜜罐等网络安全设备构筑起网络边界上的一道道防线,在演练实战中,这些设备都可能产生海量告警,能准确及时地分析日志,从日志中发现攻击方的痕迹,后续的预警、处置和溯源才有据可循,有效日志分析也能及早阻断或击退攻击方的进攻,逼其放弃尝试或者转移攻击目标。因此,日志的快速处理对于守方至关重要。哪怕部署了态势感知、SIMES等安管平台,鉴于平台对各厂家日志的兼容性、平台自身关联规则的通用性、以及对战时特殊场景的策略适配度,都无可避免的产生告警偏差,因此,对于防守方而言,人工对传统安全设备的日志走读是不可避免的。

攻击告警日志分析,首先需要具备一定的攻防基础知识,能读懂日志所对应攻击、漏洞或工具流量的大致含义,其次可以从攻击方和正常业务角度分析思考日志的产生机理,再次,需要对于各类日志形成自己的总结经验,后续碰到相似情况可果断处置。

技巧总结




1、识别攻击源IP

在攻防演练前期,最重要的是识别出攻击方的IP并进行及时处理。攻击方源IP打出的日志通常具有以下类别及特点:

扫描探测类

演练期间,很多局点扫描探测类日志占所有攻击日志(IPS)的90%以上,此类日志主要来源于自研/开源全网扫描器、僵尸网络发起的自动化感染传播。

而在攻防演练实战中,攻击者通常采用搜索引擎对目标进行资产收集。在找到资产的网络区间后,细心的攻击方会对C段进行全端口扫描,通过连续的端口扫描日志或者NMAP指纹信息日志,通常能判定出攻击者针对性的网络探测行为,很可能是演练攻击方。

同时,有的攻击方在探测目标时,会使用自研的扫描器进行主动扫描,或者通过代理转发至XRay、W13SCA扫描器进行被动扫描。这种扫描会在短时间内出现一个源IP对一个目标服务器大量的SQL注入、XSS等常规的WEB漏洞等攻击日志,这种情况基本也能判定为攻击方行为。

这类扫描类日志,特点是日志量特别大,攻击源IP相对固定,攻击持续时间短或长或短,扫描产生的日志类型较多。值得注意的是,很多客户网络是部署有负载均衡和反向代理设备的,需要获取到日志的真实源IP才能进行针对性的防护,切忌直接封堵,以免影响业务。

手工试探类

在高水准的对抗和演练中,攻击方通常不会进行盲目的扫描。在找到目标资产后,他们会进行谨慎的手工尝试,这类尝试性的日志,很容易被大量的扫描日志所淹没。因此,对于某些提示攻击方意图的告警日志,也需要进行重点处理。

比如攻击方找到上传点,会进行手工上传测试,找到疑似Struts2,ThinkPHP框架的系统,会用开源工具或者带编码绕过的自研工具进行尝试,在登录框进行SQL手工尝试,或者用Shiro反序列化工具尝试等。这些攻击流量产生的日志数量极少,却不能被防守方轻易忽略,可以针对最近一年或近年爆出的漏洞、以及客户资产情况,进行有针对性的日志搜索,一旦发现,可以进行封堵或加固,同时顺藤摸瓜,或去态势感知等平台上进行上下文关联,进一步判断攻击是否成功、摸出攻击者意图。

这类能反映攻击方意图的尝试类IPS检测规则列表,可以在实战中加以总结和积累。

异常属性类

考虑到攻方可能将扫描器和C2服务器部署在个人VPS上,而这些VPS极有可能是个人购买的云服务。在攻击日志分析时,对于IP归属地是国内外的云服务商的情况都需要加以关注。有的攻击方会在深夜乘防守方警惕性降低时进行攻击尝试,因此半夜出现的新增攻击日志源,也值得警惕。

攻击源IP的时间属性也有一定价值,如果某个源IP只在攻防演练开始之才出现日志,而之前并未出现过攻击行为,很可能来自于演练攻击方。单纯从攻击日志的各类属性特点来分析日志,也能起到一定作用,当然以上方法结合分析,效果更好。

NOD(Newly Observed Domain),域名也是可疑的观察对象之一。在演练前突然新增的域名,极有可能是攻击方为活动前做的准备。对于这类NOD域名可以提前分析获取,加入关注名单。一旦产生类似的外联日志,哪怕原有的情报和态势系统没有告警,也建议马上行动,展开失陷资产排查,并向前溯源,最大程度的还原攻击路径。

2、关注重点事件日志

高级别的演练持续时间为两到三周,进入中后期,人倦马乏,很容易进入懈怠疏漏。其实,攻击方的比拼在演练中段已经进入焦灼状态,大比分在此时拉开。防守方也需要加强投入,在中后期更需要关注一些重点事件,及时发现包括0day、新增外联、内网异常行为之类的风险。攻击方此时会亮出各家压箱底的武器,0day的使用和针对防护设备的变形绕过都是常态,不排除现有的防护设备和系统暂时“失明”,难以全面覆盖到攻击链的每一个点,这时,在日志中发现蛛丝马迹,找到关键重点事件就极有意义。这些重点事件类型包括:

木马连接类

Webshell连接工具,包括老式的大马,小马,菜刀,及各类新式的冰蝎,哥斯拉,天蝎,内存马等,特点是倾向于加密的通信,让传统检测设备无法发现行踪。在防守方的日常检测中,一旦发现木马远控连接工具,包括Cobalt Strike的命令下发流量(HTTP协议)和证书指纹规则(HTTPS协议),MSF自带木马Meterpreter及各类开源远控等的痕迹,以及这些工具通信流量产生的日志都需要警醒,这预示着内网已有机器失陷。部分工具的加密流量通信单纯靠某条规则无法检测,可能需要多模块综合研判以及AI分析模块协助处理。所以除了攻击日志,还需要将AV、情报、AI研判模块产生的日志一并纳入检测分析范围。

代理隧道类

在获取权限后,攻击方通常会使用代理工具搭建隧道进入内网,以获得稳定的控制权限。一旦出现代理隧道的日志,也说明形势较为危急,预示着攻击方可能已经打入内网。这些代理类日志包括SOCKS的反向代理(Earthworm、FRP、dtunnel_lite等)、Reduh、Regeorg等各类web代理隧道。传统设备如IPS的先验规则只能检测到明文代理流量,新华三安全设备特意基于代理隧道进行了专项覆盖,对于以上代理可以最大程度的识别,加密的隧道,可以在协商阶段尽早识别。

横向扫描类

利用代理隧道进入内网的攻击方,可能通过Ladon等工具进行网段、端口、服务的探测,以及使用爆破,撞库的方式进行内网密码破解。因此由内网IP发起的扫描探测日志如果被部署在内网的安全设备检测上报,那么这些日志也是非常值得关注的。

这几类重点事件的日志,一般表明有系统被攻陷,因此这些规则需要在演练之前保持开启状态,且演练期间关注级别很高,即使出现的日志条数只有一条,也要优先介入分析。这也对防守方攻防基础提出了一定的要求,初级防守方人员可以联动后台攻防实验室进行有效协同,中高级守方人员可以在实战中进行攻击负载和技战法的总结,形成经验智库。

3、其他技巧

对于防守方团队而言,多数是没有攻击防御规则开发背景的。现场分析人员若对某条攻击日志的具体含义持疑,无法判定攻击源IP是否恶意时,可以结合该源IP和该事件的其他相关日志进行辅助分析,通过绘制力导向图,来判断该IP的攻击意图。

经验丰富的防守方,能理解常见业务通信流量和典型攻击负载的区别,但即使如此,分析人员一般也不可能知道客户处每一款防御产品具体的规则写法和检测原则,此时可以借助载荷抓取/取证功能,对指定日志的攻击负载进行下载分析,借助网络搜索引擎,也能初步判断是攻击试探还是高危命令执行。

客户多有部署安全事件自动检测和处置系统,很多攻防专家经验已经转换成到预制规则,在系统内进行自动处理了。遇到守方客户未配置此类自动化研判系统的情况下,分析人员可以通过脚本编写,自动化处理日志数据,及时筛选出高风险IP和资产,通过批量处理加速分析,及时发现失陷事件。

总结





攻击一条线,防守一大片。演练期间,防守方作为演练中最为庞大的阵容,也是最为辛苦的角色。防守方队员需要对各类厂商的安全防御设备操作和基本原理了然于胸,对安全事件的处置流程熟练掌握,对攻击负载的理解、关联分析有一定的理解。攻防演练属于高强度对抗,防守方分析人员在连续十多天的精神重压之下,需要“看全局、抓细节”,保持谨慎警醒,才能避免攻方的突破。

诚然,一旦入驻,大家会发现现场的情况非常复杂,不是简单的一些方法论能概括的。防守方也只能随机应变,事前推动策略调优、资产梳理、流程职责落实,事中做好研判预警、协助事件定义和处置,事后做好复盘和总结,依托客户现有的资源,最大程度发挥自己的价值,并引导客户改进。以上内容中的细节,新华三安全攻防实验室均整理出对应规则列表,定向提供给驻场防守方参考。

最后,预祝所有防守方成员演练顺利!

推荐阅读2021HVV之蓝队日志分析技巧

觉得不错点个“赞”、“在看”,支持下小编2021HVV之蓝队日志分析技巧

本文始发于微信公众号(乌雲安全):2021HVV之蓝队日志分析技巧

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: