文章目录
Adversarial Tactics, Techniques, and Common Knowledges
https://attack.mitre.org/
1. 框架简介
ATT&CK模型分为三部分,在网站的techniques一栏:
- PRE-ATT&CK,覆盖Kill Chain模型的前两个阶段
- recon
- weaponize
- ATT&CK for Enterprise,有win/mac/linux/cloud平台,覆盖Kill Chain的后五个阶段:
3. Deliver
4. Exploit
5. Control
6. Execute
7. Maintain - ATT&CK for Mobile,android/ios两大平台,包含适用于移动设备的战术和技术。
总体来说,ATT&CK模型是在洛克希德-马丁公司提出的KillChain模型的基础上,构建了一套更细粒度、更易共享的知识模型和框架。 不一样的是,ATT&CK并没有遵循任何线性顺序。
该框架囊括12列战术:
- Initial Access
- Execution
- Persistence Privilege
- Escalation
- Defense Evasion
- Credential Access
- Discovery
- Lateral Movement
- Collection
- Command and Control
- Exfiltration
- Impact
每列下面列出了单独的技术,一共330种具体技术,每种技术都有唯一的ID号码。
框架中的战术使用没有严格的顺序,实际中,可灵活组合,基于此框架自定义攻击者入侵的3D行为模型:
- x轴:战术(Tactic),攻击行为的目标。
- y轴:技术(Technique),为完成战术目标使用的具体手法 。
- z轴:过程(Procedure),完成技术手法的具体实现。
关于技术细节的描述:https://attack.mitre.org/techniques/enterprise/
1.1 攻击序列
一个攻击序列按照战术,至少包含一个技术,并且通过从左侧(初始访问)向右侧(影响)移动,就构建了一个完整的攻击序列。一种战术可能使用多种技术。例如,攻击者可能同时尝试鱼叉式网络钓鱼攻击中的钓鱼附件和钓鱼链接。
1.2 导航
https://mitre-attack.github.io/attack-navigator/enterprise
ATT&CK导航可用于映射针对某技术的控制措施。可以添加不同的层,来显示特定的检测控制措施、预防控制措施甚至观察到的行为。可以在线快速搭建模型或者下载下来作为持久化方案。
2. Tactics
ID | Name | Description |
---|---|---|
TA0001 | Initial Access | The adversary is trying to get into your network. |
TA0002 | Execution | The adversary is trying to run malicious code. |
TA0003 | Persistence | The adversary is trying to maintain their foothold. |
TA0004 | Privilege Escalation | The adversary is trying to gain higher-level permissions. |
TA0005 | Defense Evasion | The adversary is trying to avoid being detected. |
TA0006 | Credential Access | The adversary is trying to steal account names and passwords. |
TA0007 | Discovery | The adversary is trying to figure out your environment. |
TA0008 | Lateral Movement | The adversary is trying to move through your environment. |
TA0009 | Collection | The adversary is trying to gather data of interest to their goal. |
TA0011 | Command and Control | The adversary is trying to communicate with compromised systems to control them. |
TA0010 | Exfiltration | The adversary is trying to steal data. |
TA0040 | Impact | The adversary is trying to manipulate, interrupt, or destroy your systems and data. |
有人认为,在所有ATT&CK战术中,持久化Persistence
是最应该关注的战术之一。
2.1 Initial Access
从PRE-ATT&CK到ATT&CK的理想过渡点。
措施:
- 控制管理员权限的使用
- 电子邮件和Web浏览器保护
- 帐户监视和控制
2.2 Execution
并非所有恶意软件都是可以用杀毒软件轻松查找其恶意可执行文件。
应用白名单是缓解恶意软件攻击时最有用的控制措施,但局限性高。
2.3 Persistence
持久化是最受攻击者追捧的技术之一。攻击者希望尽可能减少工作量,包括减少访问攻击对象的时间。即便运维人员采取重启、更改凭据等措施后,持久化仍然可以让计算机再次感染病毒或维护其现有连接。
注册表Run键、启动文件夹是最常用的技术,这些注册表键或文件系统位置在每次启动计算机时都会执行。因此攻击者在启动诸如Web浏览器或Microsoft Office等常用应用时开始获得持久化。
还有使用“镜像劫持(IFEO)注入”等技术来修改文件的打开方式,在注册表中创建一个辅助功能的注册表项,并根据镜像劫持的原理添加键值,实现系统在未登录状态下,通过快捷键运行自己的程序。
such as replacing or hijacking legitimate code or adding startup code.
如果企业在终端上发现恶意软件并将其删除,很有可能它还会重新出现。可能的原因:
- 有漏洞还未修补
- 攻击者已经在此或网络上的其它地方建立了持久化。
2.4 Privilege Escalation
利用系统漏洞达到root级访问权是攻击者核心目标之一。一些技术需要系统级的调用才能正确使用,Hooking和进程注入就是两个示例。该战术中的许多技术都是针对被攻击的底层操作系统而设计,要缓解可能很困难。
措施:
- 加固,可参考CIS(Comprehensive Intranet Security)
- 审计日志
2.5 Defense Evasion
截至目前,防御绕过所拥有的技术是MITRE ATT&CK框架所述战术中最多的。
禁用安全工具、文件删除和修改注册表都是可以利用的技术。
措施:
- 监视终端上的更改
- 收集关键系统的日志
2.6 Credential Access
攻击者很想获取凭证。犹如小偷进入房子,如果能够找到钥匙开门,没人会愿意砸破窗户方式进入。
攻击者入侵一个系统、窃取本地哈希密码并破解本地管理员密码并不鲜见。
措施:
- 采用复杂密码是最简单的办法
- 多重验证
2.7 Discovery
“发现”战术与洛克希德·马丁网络Kill Chain的侦察阶段有很多相似之处,且难以防御。
措施:
- 白名单
- 放置虚假信息
- 监视
2.8 Lateral Movement
攻击者通常会先寻找一个落脚点,然后开始在网络或各个系统中移动,寻找更高的访问权限。
措施:
- 网络分段。将关键系统、通用用、系统管理员分别放置在三个子网中;
- 在终端和交换机级别都设置防火墙;
- 控制管理员权限,严格控制管理员凭据的使用方式和位置
- 审计日志。比如,Kerberos黄金票证密码已重置两次,这可能表明存在票据传递攻击。
2.9 Collection
ATT&CK缺少减轻这些技术的实际指导。
大概措施:
- 加强对企业存储敏感数据位置的保护;
- 查看更多的日志记录
2.10 Command and Control
攻击者一般都是从远程位置访问网络,通过命令和控制权来渗透数据。
措施:
- 防火墙。一些恶意软件家族会在不常见的网络端口上隐藏流量,或者使用80和443等端口来尝试混入网络噪音中。防火墙不会阻止所有攻击,但有助于过滤一些常见的恶意软件。
如果边界防火墙无法提供威胁情报,则应将防火墙或边界日志发送到日志服务处理中心,安全引擎服务器可以对该级别数据进行深入分析。例如Splunk等工具为识别恶意命令和控制流量提供了良好的方案。
2.11 Exfiltration
与“收集”战术一样,ATT&CK缺少指导意见。
并不是所有恶意软件都能到达“数据渗漏”这个阶段,例如勒索软件。
措施:
- 建立网络入侵检测或预防系统有助于识别何时传输数据,尤其是在攻击者窃取大量数据(如客户数据库)的情况下。
- 如果企业组织机构要处理高度敏感的数据,那就限制外部驱动器的访问权限,例如USB接口,限制其对这些文件的访问权限,即可禁用他们装载外部驱动器的功能。
2.12 Impact
影响。
在某些情况下,业务流程可能看起来很好,但可能已经被篡改。
攻击者可能破坏特定系统数据和文件,从而中断系统服务和网络资源的可用性,这时可以考虑实施IT灾难恢复计划。
3. 映射
映射就是在ATT&CK矩阵中做匹配,分为两部分:
- 人工映射,更准确;
- 自动化映射,基于AI,更符合实际环境。
有安全研究员认为可以从四个角度进行入手:
- 环境,如系统,执行环境(命令,内存,sql);
- 操作,如文件释放,数据修改,网络请求,类似病毒行为分析;
- 操作对象,如文件,注册表;
- 特征,匹配ATT&CK的技术ID后就可以映射。
4. CTI Training
MITRE在github开源了一个cti项目,里面恰好有我们所需的数据。链接在官网/resources/training/cti
目录可以找到。
https://github.com/mitre/cti
/enterprise-attack/attack-pattern
下每个json代表一个Technique的详细信息,具体含义参考readme。
cti包括5个模块,并附带视频和练习。全部完成预计需要4小时。