TA0043 Reconnaissance

就是收集一些信息以便安排后续的攻击.

T1595 Active Scanning:在和网站的交互中,主动去扫描这个网站的信息,包括

  • IP Block Scanning:扫描一个连续的 IP 段,看哪些主机/端口被使用,可以绘制一个网络拓扑结构.
  • Vulnerablity Scanning:扫描网站的 vulnerability
  • Wordlist Scanning:枚举发现一些子域名/隐藏网页目录/用户民

T1592 Gather Victim Host Information:收集 host 相关的信息,包括

  • Hardware:有些东西可能有硬件上的保护,比如 biometric reader
  • Software:有些东西可能有 antivirus 等软件上的保护
  • Firmware:扫描固件信息,写入固件的恶意代码可以一直潜伏
  • Client Configurations:os version,architecture,timezone 等

T1589 Gather Victim Identity Information:收集一些 identity 的东西,包括 Credentials,EmailAddresses,Employee Names

T1590 Gather Victim Network Information:网络信息,包括

  • Domain Property:可以帮助直接找到负责人又想,以及公司的一些其他域名
  • DNS:可以用来看到使用的第三方服务
  • Network Trust Dependencies:找到一些合作伙伴/提供商
  • Network Topology:绘制网络拓扑结构
  • IP Addresses:了解 IP 地址
  • Network Security Appliances:使用了哪些网络安全的工具

T1598 Phishing for information:钓鱼,诱使受害者发一些敏感信息,可以通过 Service,Attachment,Link,Voice

T1597 Search Closed Sources:从一些搜不到的渠道获取信息,比如从威胁情报供应商获得,或者从一些地方购买技术信息情报

T1596 Search Open Technical Databases:从一些可以搜到的渠道获得技术信息. DNS,WHOIS(可以查到一些 IP blocks,contact info 等),Digital Certificates,CDN,以及一些公开的 scanning results

T1593 Search Open Websites/Domains:从一些可以搜到的渠道获得其他信息,比如社交媒体,搜索引擎,code respositories

T1594 Search Victim-Owned Websites:受害者所拥有的其他网站也可能透露一些信息.

TA0042 Resource Development

T1650 Acquire Access:直接付钱让别人帮忙获得 access

T1583 Acquire Infrastructure:建立属于自己的域名,DNS,服务器,botnet 等

T1585 Establish Accounts:建号

T1586 Compromise Accounts:利用一些已有的社交媒体账号 / 邮箱账号 / 云账号

T1584 Compromise Infrasturcture:和 1583 差不多,但是也是利用一些已有的.

T1588 Obtain Capabilities:获取一些有用的工具,malware 或者 certificates 这种. 或者利用 AI.

T1608 Stage Capabilities:使用这些工具,比如将 malware 和 tool stage 到 infrastructure 上. 或者比如 SEO poisoning,将陷阱网站利用搜索引擎的机制排到搜索结果的前面(挺常见的感觉).

TA0001 Initial Access

T1659 Content Injection:各种注入攻击.

T1189 Drive-by Compromise:路过式攻击,访问网站的用户就会似

T1190 Exploiting Public-facing App:利用一个大家都能用的东西的 bug / weakness.

T1133 External Remote Services:利用像 VPN / 远程管理等方法进入网络.

T1566 Phishing:钓鱼. 同理.

T1195 Supply Chain Compromise:在薄弱的供应商的东西上下毒. 公司会信任供应商,但是如果供应商的东西早就被攻击了就似了.

T1199 Trusted Relationship:攻击信任的供应商,然后通过这条信任的道路进入网络.

T1078 Valid Accounts:用偷来/被攻破的的信任的账户进入网络.

TA0002 Execution

T1651 Cloud Admin Command:通过 Abuse 一些可以 remotely run command 的工具来进行.

T1059 Command and Scripting Interpreter:各种 shell.

T1610 Deploy Container:在一个新建的 container 中进行操作,来 bypass 掉一些 defenses.

T1203 Exploitation for Cli Exe:利用客户端中的一些 vulnerablities 来执行想要的命令.

T1674 Input Injection:各种 injection.

T1559 IPC:将恶意代码的执行藏在进程间通信(IPC)中,称为进程注入.

T1204 User Execution:在用户端诱使用户执行代码,比如通过 malicious link / file / image / copy&paste.

TA0003 Persistence

维持住自己得到的权限 / ...

T1098 Account Manipulation:得到账号后通过一系列方式修改密码和加固等,将其变为自己长期拥有的账号.

T1197 BITS Jobs:利用 BITS 来在 background 中执行命令.

T1547 Boot or Logon Autostart Exe:将要执行的东西能够自动执行,比如修改 Shortcut,放进 Startup Folder,放进 Login Items 什么的.

T1037 Boot or Logon Initial Scripts:在登录/启动脚本中藏代码,使其能够持续发力,比如藏到 Logon Scripts / Startup Items 等.

T1543 Create or Modify Sys Process:更改系统进程代码,让能够一直执行一个恶意代码.

T1546 Event Triggered Exe:潜伏着,然后在触发一些 event 再进行执行. 比如利用篡改辅助功能(例如粘滞键),更改默认程序,WMI 时间订阅(A事件 -> B 命令)等.

T1556 Modify Authentication Process:修改 authentication 的过程,使得可以随便就登录任何想要的东西. 比如,注入一个万能钥匙使得可以登录任何一台机器,或者在用户修改密码的时候直接记下来明文密码.

T1176 Software Extensions:将恶意代码藏在浏览器 / IDE 插件中.

T1078 Valid Accounts:获得一些账户. 可能是本地账户(一台服务器的权限),域账户(可以登录域内所有服务器),云账户(可以窃取存储在云上的信息),默认账户(有些忘记修改默认密码的特定设备和系统).

TA0004 Privilege Escalation

尝试得到更高的权限.

T1548 Abuse Elevation Control Mechanism:直接钻系统的漏洞尝试获得更高权限的办法,比如

  • Bypass UAC:修改注册表,让合法程序在运行的时候执行恶意代码
  • Setuid Setgid:找到一些能临时获取权限的程序并利用
  • Sudo Caching:sudo 命令过后一段时间不用再次认证,利用这段时间

T1134 Access Token Manipulation:获得一个权限比较高的 token. 可以通过直接偷到,也可以通过 SID-History 注入(拿到域管理员权限之后修改普通用户的 SID-History 属性).

T1574 Hijack Execution Flow:把要执行的合法资源替换成恶意代码. 比如 DLL Search Order Hijacking,将一个恶意的同名 DLL 放在与程序目录相近的地方,那么程序就会加载恶意 DLL. 而 Linux 下的 Dynamic Linker Hijacking,就是修改 LD_PERLOAD 环境变量,强制在加载任何程序前优先加载恶意代码.

TA0005 Defense Evasion

防止被探测到.

T1548 Abuse Elevation Control Mechanism:同上.

T1134 Access Token Manipulation:同上.

T1564 Hide Artifacts:摁藏. 比如:隐藏文件,隐藏用户,隐藏窗口,虚拟网络,藏在 antivirus 扫不到的地方,忽略 process interrupts,将资源先 fork 出来,等等.

T1562 Impair Defenses:将 defensive 的东西给 disable 掉. 比如干掉一些 security software,干掉防火墙,关掉 event logging 和 command history logging.

T1656 Impersonation:把人骗去干坏事.

T1070 Indicator Removal:把痕迹去掉,包括 event logs, system logs, cmd history,删文件,删时间戳,网络历史,邮件信息,删 persistence,删 malware.

T1036 Masquerading:伪装. 比如,模仿一个 valid code signatures,RLO(photo_high_re\u202Egnp.js 会显示成 photo_high_resj.png),模仿一些 task & service 的名称,等等。

T027 Obfuscated Files:加密或混淆可执行文件,使得一个东西难以被一些检测方式分析到. 比如插入一些 junk code,进行压缩,command line obfuscation,传递 uncompiled code,等等.

TA0006 Credential Access

尝试得到账户和密码.

T1557 Adversary-in-the-Middle:让两个机子的沟通经过一个能够获取中间的信息的东西.

T1110 Brute Force:顾 名 思 义,直接猜,或则根据哈希破解.

T1555 Credentials from Password Stores:从存储密码的地方获得密码. 比如浏览器会存储密码,一些第三方的密码管理器也会存储密码.

T1187 Forced Authentication:逼你给出密码.

T1056 Input Capture:顾 名 思 义. 捕捉键盘输入来得到你的密码.

T1556 Modify Authentication Process:和 TA00-3 中的那个一样.

T1539 Steal Web Session Cookie:顾 名 思 义.

T1552 Unsecured Credentials:有些密码存在很不安全的地方,比如:文件中,registry,bash history,一些 .key 文件,聊天记录等.

TA0007 Discovery

T1087 Account Discovery:找到账号的一个列表,然后用来下一步的枚举,或者钓鱼,或者攻破.

T1010 Application WIndow Discovery:找到运行的应用,然后这些应用可能可以表明一些可收集的数据 / security tools.

T1057 Process Discovery:看系统上有哪些进程,以明白里面干了些啥.

T1517 Software Discovery:看有哪些软件,可以利用.

T1217 Browser Information Discovery:看浏览器的信息. 可能能获得比如 banking sites,社交媒体等个人信息,以及 servers, tools 等和内网有关的信息.

T1083 File and Directory Discovery:在机器的一些文件中找东西.

T1615 Group Policy Discovery:阅读 SYSVOL 文件夹内内部网络的 group policy. 了解公司网络管理的一些规定和策略.

T1202 Password Policy Discovery:阅读密码策略,以辅助 bruteforce.

T1046 Network Service Discovery:看服务器中运行了哪些 service.

T1135 Network Share Discovery:找一些在服务器上的共享文件/文件夹.

T1069 Permission Groups Discovery:查看用户组及其权限,确定哪些用户/用户组可用/有更高权限.

T1018 Remote System Discovery:看当前网络还有什么别的东西,用 ping,net view 等,为横向移动做准备.

T1016 System Network Configuration Discovery:了解网络设置,比如 IP 和 MAC 地址. 可以用 Arp,ipconfig,route 等.

T1049 System Network Connections Discovery:找当前设备在网络上连接的其他设备.

T1497 Virtualization Evasion:从虚拟机/沙盒环境中逃逸.

TA0008 Lateral Movement

T1534 Internal Spearphishing:利用已经控制的电脑的主人的身份去钓鱼.

T1570 Lateral Tool Transfer:将一些工具/文件通过传输到别的系统去.

T1563 Remote Service Session Hijacking:通过本机的一些远程服务,来控制别的机器. 比如劫持本机的 SSH,或者远程桌面.

T1021 Remove Services:登录一些远程服务的账号,比如 telnet,SSH,VNC,远程桌面,以及一些云服务.

T1091 Replication Through Removable Media:将一些东西复制到可移动介质上,然后在可移动介质插到别的电脑上时执行.

T1080 Tainted Shared Content:将恶意代码藏在一些共享地方,别的机器访问执行共享的东西就会被攻击.

T1550 User Alternate Authentication Material:有时候不需要明文密码,用一些 app access token / password hash / kerberos tickets 就可以直接得到 authentication.

TA0009 Collection

收集自己想要的信息. 很多 credential access 的 technique 这里都可以用.

T1560 Archive Collected Data:将想要传出来的数据给压缩/加密了,防止被发现并且减少流量.

T1074 Data Staged:将获得的数据暂存在一个位置. 可以是本地,也可以是远端的.

T1119 Automated Collection:用一些脚本自动收集信息.

T1114 Email Collction:从 Email 中获取敏感信息.

一些 Capture 操作有 Screen Capture (T1113),Video Capture (T1125),Input Capture (T1056),Audio Capture (T1123).

然后 Data 可以来自 Cloud Storage (T1530),Configuration Repository (T1602),Information Repositories (T1213)(这包括比如 SharePoint,代码仓库,用来存用户信息的 CRM,通信软件),Local System (T1005),Network Shared Drive (T1039),Removable Media (T1025).

TA0011 Command and Control

如何在防止被检测到的情况下控制电脑,称为 C2.

T1071 App Layer Protocol:将通信伪装成正常的 HTTP / FTP / DNS 协议通信.

T1095 Non-App Layer Protocol:将通信伪装成正常的 ICMP / UDP / SOCKS 等.

T1659 Content Injection:在原先的数据传输通道中进行注入攻击.

T1132 Data Encoding:将 C2 信息加密,防止被检测.

T1568 Dynamic Resolution:动态地调整 C2 地端口号 / IP 地址等.

T1571 Non-Standard Port:用一些非传统的 Port(比如不使用 433 而是用 947).

T1090 Proxy:使用一些代理作为中转,来管理 C2 的流量. 可以使用多个代理来掩盖流量来源.

T1219 Remote Access Tools:用一些远程连接的工具,比如 IDE Tunneling,远程桌面的一些软件等.

TA0010 Exfiltration

把数据偷出来.

本质上就是,如何在偷出来的时候尽量不被发现.

T1030 Data Transfer Size Limits:切成若干个小块.

T1041 Exfilteration Over C2 Channel:利用之前建立的 C2 Channel 进行传输.

T1567 Exfiltration Over Web Service:通过一些已有的 Web Service 来传输,比如上传到 code respositories, cloud storage, text storage sites (pastebin), webhook 等.

T029 Scheduled Transfer:每天传输一点点.

TA0040 Impact

如何在完成上述的工作之后进一步造成重创.

比如 system shutdown!比如 rm rf!比如加密然后勒索!比如邮件轰炸!比如窃取!比如挖矿!