手工打造基于ATT&CK矩阵的EDR系统

手工打造基于ATT&CK矩阵的EDR系统
文章图片

EDR,终端检测响应系统 , 也称为终端威胁检测响应系统(ETDR) , 是一种集成的终端安全解决方案 , 它将实时连续监控和终端数据采集与基于规则的自动响应和分析功能结合在一起 , 是一种用于检测和调查主机和终端上的可疑活动的新兴安全系统 , 该系统采用高度自动化 , 使安全团队能够快速识别 , 定位和应对威胁 。
EDR系统的主要功能是:
1.监视和收集可能存在威胁的终端的活动数据
2.分析采集到的数据 , 通过威胁模型进行关联识别
3.作为取证和分析的工具 , 以研究锁定的威胁和搜索可疑活动
在未有系统地部署EDR产品的企业中将很明显地缺乏针对未知病毒的监控手段以及事件回溯的能力和工具 , 仅依靠单一的杀毒软件能够回馈到的信息是极为有限的 , 甚至乎根本就无能为力 。 主要原因在于其缺乏日志级的监控工具以供回溯 , 所以SYSMON的正确部署能够有效地帮助应急人员快速地定位并处理病毒和攻击事件 , 也能提供非常丰富的事件回溯 。 具体SYSMON的介绍和使用我这里就不再详述了 , 大家可以参考Freebuf中的文章 , 已经有大量篇幅详细地介绍了SYSMON的情况 。 但是 , 想要用好SYSMON其实并不是一件非常轻松和简单的事情 , 它的背后必定要有一个强大的平台和一个强大的团队 。 平台即为大数据分析平台 , 可为ELK , 可为GrayLog , 可为日志易 , 也可以为Splunk 。 因为Splunk的优秀搜索能力和人性化的操作界面 , Freebuf中也介绍了非常多的文章如何利用Splunk+SYSMON进行日志分析 , 从而协助安全人员进行分析 。
手工打造基于ATT&CK矩阵的EDR系统
文章图片

要想用好的另外一个条件是要有专业的人手 , 能够帮你从大量日志中筛选出病毒向量 , 攻击向量 , 并结合一定的IOC规则定义成各种报警 , 报表和可视图表 。 这个工作是异常繁琐和重复的 , 需要不定期的修改和调整从而能涵盖更多的攻击场面 , 时间长了 , 使用Splunk+SYSMON的纯粹使用者将会产生报警免疫 , 从而有可能漏过真实报警 。 那么有没有一种方法可以快速定位问题还能涵盖更多的攻击面呢?恰恰我们知道MITREATT&CK矩阵的存在 , 这个编排了几乎所有的攻击可能载体的矩阵图 , 几乎市面上所有的SIEM或者威胁检测供应商都已经开始将他们的产品对准MITRE的ATT&CK矩阵了 。 ATT&CK矩阵在Freebuf里面也是有如明星帮的存在 , 太多话题提到了 , 我这里也不再详述 。 那么 , 我们是不是有可能将SPLUNK+SYSMON+ATT&CK关联起来 , 实现更为有效的 , 更为简单的IOC的编写和侦测呢?
手工打造基于ATT&CK矩阵的EDR系统
文章图片

确实 , 这是可行的 。 相信大部分使用SYSYMON的童鞋应该都是参考SwiftOnSecurity的配置文件吧 , 参见:
https://github.com/SwiftOnSecurity/sysmon-config但是 , 恰恰SwiftOnSecurity的配置文件并没有映射ATT&CK矩阵 , 所以只能非常遗憾地将其作为一个本地的SYSMON日志记录配置文件;而另外一位大佬ion-storm , 他fork的ThreatIntelligenceSIEM的SYSMON配置文件却刚好做了ATT&CK矩阵的映射 , 参见:https://github.com/ion-storm/sysmon-config 。
如此 , 我们就可以想办法将SPLUNK+SYSMON+ATT&CK关联起来了 , 很可惜 , 这位大佬的文档已经几年不更新了 , 所以他的配置文件需要自行修改 。 而与此同时 , 另外一位大佬olafhartong编写了“sysmon-modular” , 分门别类地将SYSMON的各级事件日志详细地分类并规整为一份完整的 , 系统的ATT&CK矩阵映射的SYSMON配置文件 , 参见:
https://github.com/olafhartong/sysmon-modular , 然后大佬再开发了一个名为”ThreatHuning”的APP插件 , 参见:https://github.com/olafhartong/ThreatHunting , 这下就全齐活了 。 插件可以在Splunkbase下载 , 参见:
https://splunkbase.splunk.com/app/4305/ , 附带的视频介绍非常清晰地演示了该插件的用法 , 参见:https://youtu.be/zcTrXP7scTU 。
如果想要看大佬对SYSMON的演讲视频 , EndpointDetectionSuperPowersinSplunkDemo , 参见:http://www.irongeek.com/i.php?page=videos/derbycon9/stable-36-endpoint-detection-super-powers-on-the-cheap-with-sysmon-olaf-hartong 。 没有梯子的同学就只能看我搬砖过来的PDF文件了 ,
当装好了ThreatHunting插件后 , 我们就可以在SPLUNK中启用这个APP , 如下图所示 , 这张图通过ATT&CK的映射一一展现了系统被命中的威胁指标情况 。
手工打造基于ATT&CK矩阵的EDR系统
文章图片

针对主要的几个界面 , 我简单的做下介绍:
这个页面将主要做数据追踪使用 , 将计算机 , 用户 , 文件创建 , 网络连接 , 管道 , 父子进程等做了非常详细的一个聚合 , 可以很轻易的将你关心的数据信息呈现出来 。
手工打造基于ATT&CK矩阵的EDR系统
文章图片

例如:该主机分析面板上将主机的所有活动进程进行聚合 , 可以非常清晰地了解到什么时间 , 什么用户 , 执行了什么程序 , 什么参数手工打造基于ATT&CK矩阵的EDR系统
文章图片

是否检测到了Mimikatz的可疑加载
又有哪些进程的对外连接等等
手工打造基于ATT&CK矩阵的EDR系统
文章图片

而这个网络子面板通过搜索源目标和目的目标可以构建一张描叙了所有网络连接的定向图 , 显示了所有的网络通信流量所记录到的主机
手工打造基于ATT&CK矩阵的EDR系统
文章图片

这张将显示DNS申请 , 可以知道DNS申请是由哪台机 , 哪个进程发起的等等 。
手工打造基于ATT&CK矩阵的EDR系统
文章图片

同样 , 可以对内网横向移动指标进行追踪 , 将哪些文件宏也一一进行筛选 , 如果计算机中出现了未知的文件(Newlyobservedhashes) , 也将可以进行标记 , 从而判断是否属于病毒的新型变种或者攻击者使用的某种新型工具等等 。
手工打造基于ATT&CK矩阵的EDR系统
文章图片

列出宏文件的处理时间
手工打造基于ATT&CK矩阵的EDR系统
文章图片

当然 , 使用SYSMON必然会有很多噪音以及误报 , 所以需要大量的人力去进行配置的维护和规则的处理 , 这个强大的白名单机制可以减轻大量的人工操作 , 简单 , 快捷而有效 。
手工打造基于ATT&CK矩阵的EDR系统
文章图片

ThreatHunter的功能非常强大和实用 , 而更多的功能和使用方法还需要大家自己去挖掘 , 如果有条件 , 也可以将Windows的事件日志通过UniversalForwarder发送给Splunk , 再结合EventID.net的SPLUNK插件即可实现事件日志审计 , 参见:https://splunkbase.splunk.com/app/3067/手工打造基于ATT&CK矩阵的EDR系统
文章图片

最终 , 这套简单有效的ThreatHunting组件透过SYSMON和SPLUNK轻易地将ATT&CK矩阵映射成为实际可用的一套EDR系统 , 抛弃一些其他EDR系统华而不实的功能 , 专注于威胁追踪 , 猎杀和事件回溯 , 可以很有效地帮助企业提升对抗病毒 , 恶意攻击的能力!*本文作者:langyajiekou , 转载请注明来自FreeBuf.COM
精彩推荐
【手工打造基于ATT&CK矩阵的EDR系统】手工打造基于ATT&CK矩阵的EDR系统
文章图片


    推荐阅读