「到底被没被入侵,看哪里才能知道?」——那个线索就是 IOC(失陷指标)。本文从防御视角讲解它的含义与种类、用法,以及不可过度依赖的理由(不涉及攻击手法)。
IOC 的主要种类
按「痕迹留在哪里」大致分为 4 类。
| 种类 | 例子 | 在哪里比对 |
|---|---|---|
| 网络类 | 攻击者服务器的 IP/域名、C2 的 URL | 防火墙/代理/DNS 日志 |
| 文件类 | 恶意软件的 SHA-256 哈希、特征性文件名 | EDR/杀毒软件/文件清单 |
| 主机类 | 可疑的注册表键、陌生的常驻进程 | 操作系统日志・进程清单 |
| 行为类 | 与平时不同的时间/国家的登录、突发的大量通信 | 认证日志・通信量监控 |
IOC 与 IOA — 「痕迹」与「行为」
常被拿来对比的是 IOA(Indicator of Attack=攻击指标)。理解了二者的区别,就能看清 IOC 的长处与短处。
IOC(失陷指标)=结果的痕迹
- 已经发生之事的证据(哈希・IP 等)
- 能对已知恶意机械地命中=快
- 但攻击者可以轻易更换(用完即弃)
- 本质上是事后追溯
IOA(攻击指标)=进行中的行为
- 「权限提升→横向移动→对外发送」等手法的流程
- 能在接近实时的阶段察觉
- 比痕迹更难更换(因为它是攻击的本质)
- 需要理解其机理,因此落地较重
对攻击者而言的“更换难易度”(痛苦金字塔)
同样是 IOC,攻击者更换它的成本(=我们卡住它时的效果)也天差地别。越往下越容易更换,越往上越难更换。
也就是说,哈希和 IP 的比对见效快,但代价是很快就会过时。越是连手法(对方会怎么打过来)都理解到位地去防备,防御就越能持久。
小团队也能做的 IOC 用法
即使没有专门的 EDR 或威胁情报订阅,现实中也有可以做的事。
从可信来源获取 IOC
与自己的日志・依赖比对
一旦命中就隔离并调查
记录自己环境的 IOC 并横向排查
本站的观点:IOC 是“火灾过后的焦痕”。真正的关键是不会着火的设计
IOC 比对很重要,但它是确认火灾发生之后留下的焦痕的工作。等到能找到痕迹时,早就已经被入侵了。所以本站把 IOC 比对作为“排查工具”保留在手,而把着力点放在从源头上就不会着火的设计上——最小权限・迅速打补丁(CVE 监控)・抗钓鱼 MFA・不要把机密以明文存放,这些根本性的对策。依赖事后痕迹比对的防御,永远会慢半拍。用痕迹去“察觉”的能力,和不让痕迹留下的“防住”的能力,两者并举才是正解。
接下来阅读
- 术语:什么是 CVE(洞的标识符) / 什么是勒索软件 / 什么是钓鱼
- 恢复:备份与恢复基础
FAQ
QIOC 是什么?
它是 Indicator of Compromise(失陷指标)的缩写,指已经发生的入侵所留下的“痕迹”。具体来说,是指可疑文件的哈希值、攻击者的通信对端 IP 地址或域名、恶意 URL、异常的进程或注册表更改等。把这些作为一份已知恶意清单保留下来,再与自己的日志和终端比对,用来发现『是否有被入侵的迹象』。
QIOC 和 CVE 有什么区别?
CVE 是『哪里有洞(漏洞的标识符)』,IOC 是『是否有被入侵的痕迹(攻击的证据)』,二者是两回事。CVE 是打补丁的对象,IOC 是用来确认『是否已经被踩过』的比对材料。按顺序来说,先用 CVE 把洞堵上,再用 IOC 检查是否被踩过。
Q只看 IOC 就能守住吗?
守不住。IOC 本质上是“事后追溯”,攻击者可以轻易地把文件哈希或 IP 用完即弃、随意更换。IOC 比对在『是否命中已知恶意』的最终确认上有效,但真正的关键是不会着火的设计(最小权限・及时打补丁・抗钓鱼 MFA),以及对比痕迹更难更换的“行为”的监控。