2013年MITRE 启动了 ATT&CK 项目,以记录针对 Windows 企业网络的高级持久威胁使用的常见策略、技术和程序。
ATT&CK 是信息安全领域中针对攻击对抗行为的知识库和模型,涵盖了攻击行为各个阶段及相应的攻击方法、缓解措施、数据源。
故而ATT&CK 中包含战术、技术、数据源、缓解措施、黑客团体、攻击软件信息。
ATT&CK 战术在企业安全中包含侦察、资源开发、初始访问权限、执行、持久化、特权提升、防御规避、凭证访问、发现等一系列战术。
细心的朋友会发现,这一系列的战术和红队攻击步骤中有些相似。(实战中会采用其中的几种战术进行组合)
实际上这些战术是一段完整攻击行为的生命周期。
那什么是战术呢?
战术(Tactics)是攻击行为的阶段性目标。例如:侦察战术。
侦察,攻击者试图收集可用于未来攻击的信息。例如:企业域名信息、公众号信息、出口IP、邮箱信息、企业应用系统信息。
有了战术目标,如何实现呢?
技术(Techniques)是攻击者实现战术目标的攻击手法。
还是拿侦察战术继续讲,如何实现侦察呢?可以主动扫描、收集主机信息、收集身份信息、收集网络信息、收集组织信息等。
这些就是技术了,但是这样还不够具体,所以提出了子技术概念。
子技术(Sub-Techniques)是攻击者技术中更为细节的技术方法。
例如主动扫描
扫描IP段,攻击者对目标可能IP段进行扫描,发现目标IP信息。
漏洞扫描,攻击者对目标主机/应用程序进行扫描,寻找与特定漏洞一直的攻击目标。
例如网络钓鱼以获取信息
钓鱼服务。攻击者通过第三方服务发送钓鱼信息,以获取敏感的信息。例如假冒的修改密码系统。
钓鱼附件。攻击者发送带有恶意附件给受害者。
钓鱼链接。
在ATT&CK 技术中,Mitre还提供了该技术对应的攻击案例、防御措施、检测措施。
场景例子:在linux中setuid 提权攻击。
战术上隶属于特权升级
技术上隶属于滥用提权控制机制
Linux版Exaramel可以通过具有setuid功能的特定二进制文件执行具有高权限的命令。
如果应用程序被盗,具有已知漏洞或已知shell转义的应用程序不应设置setuid或setgid参数,以减少潜在损害。此外,设置setuid或setgid参数的程序数量应在整个系统中最小化。
监控实用程序(如chmod)及其命令行参数,以查找设置setuid或setguid参数的命令。
监控文件系统,文件中是否包含设置setuid或setgid参数的命令。
监控对文件的更改,这些文件可能执行shell转义,或使用setsuid或setgid参数利用应用程序中的漏洞,以便在其他用户上下文中运行代码。
进程详情记录
命令行审计日志记录
文件管理日志(文件访问、文件创建、文件删除、文件修改)
看官:你说的这个HIDS自己就可以干了,还要什么ATT&CK?
笔者:这是个好问题,老板可以对照 ATT&CK 看看自家用的HIDS功能是否针对主机安全覆盖足够。也算是购买HIDS时的一个评价参考。
通过上面案例,我们可以很直观的体验到ATT&CK魅力。那在企业安全运营时,如何正确利用 ATT&CK 呢?
不知攻焉知守,最近一两年比较火的一句话了。笔者认为 ATT&CK 弥补了企业安全能力认知短板。
企业有很多资产,那么站在 ATT&CK的视角来看看,如果攻击目标是该资产会有哪些攻击行为,这些攻击行为该如何检测和缓解也就有了思路。
当面对大老板的灵魂拷问的时候,我们的安全做的怎么样的时候?
或许是时候祭出ATT&CK了,可以回答其中的一个维度。(企业安全是多维度的)
资产梳理是否清楚?自动化的资产测绘是否建立?
资产对应的ATT&CK是否分析完毕(有可能是购买第三方厂商的产品或服务)?
资产对应的威胁情报是否已经在持续收集中?
资产对应的威胁缓解、检测机制是否已经上线?
资产对应的安全响应机制是否建立?该机制是否可以自动化?
由上可得,同行公司ATT&CK覆盖指数xxx,我们ATT&CK覆盖指数xxx。
最后,安全建设不是无限投入,而是按需建设。
ATT&CK 大而全,也就意味着不能上来全部都上。日拱一卒,行则将至。依据框架进行安全建设,讲究的是在正确的方法论上长期积累。
ATT&CK 官网:https://attack.mitre.org