4、威胁狩猎方法论:假设驱动狩猎、基于异常检测狩猎、基于威胁情报狩猎
威胁狩猎不是瞎猫碰死耗子。我见过太多团队,买了昂贵的平台,每天跑一堆告警,结果还是被攻破了。为什么?因为他们没有方法论。
说白了,狩猎就像侦探破案。你得有思路,有假设,有工具。今天我就把三种最核心的狩猎方法论掰开揉碎讲给你听。这三种方法,我个人习惯组合着用,效果最好。
4.1 假设驱动狩猎
这是我最推崇的一种方式。你想想看,如果你连找什么都不知道,怎么可能找得到?
核心思想:基于你对攻击者手法的理解,先提出一个假设,然后去验证它。
举个例子:
假设:攻击者可能利用Log4j漏洞入侵了我们的Web服务器。
验证步骤:
- 检查Web服务器日志中是否存在JNDI注入的payload特征
- 查看DNS日志,看是否有对外部恶意域名的解析请求
- 检查进程创建事件,看是否有异常的Java进程启动
我在项目中遇到过一件事。有一次,我们假设攻击者会通过钓鱼邮件投递恶意宏。结果一查,还真有人在三天前打开过带宏的文档。嗯,这就是假设驱动的力量——你主动去找,而不是等告警。
如何构建好的假设?
我个人习惯从这几个维度入手:
- 最新漏洞:比如刚爆出的CVE,攻击者一定会尝试
- 行业攻击模式:金融行业容易被勒索,政府单位容易被APT
- 内部资产变化:新上线的系统、新开放的端口,都是靶子
小技巧:我建议每周开一次假设评审会。团队每个人提2-3个假设,然后投票选出最可能发生的3个,集中精力去验证。别贪多,贪多嚼不烂。
4.2 基于异常检测狩猎
这个方法更偏向数据驱动。你不预设攻击者会用什么手法,而是让数据说话。
核心思想:建立正常行为的基线,然后找出偏离基线的异常点。
你想想看,正常员工谁会凌晨三点登录VPN?谁会一天下载10GB的数据库?这些异常,往往就是攻击者的脚印。
常用的异常检测维度
| 维度 | 正常基线 | 异常信号 |
|---|---|---|
| 登录时间 | 9:00-18:00 | 凌晨2:00登录 |
| 数据量 | 日均100MB | 单日5GB外传 |
| 访问频率 | 每分钟10次 | 每秒1000次(爆破) |
| 地理位置 | 本地城市 | 突然从国外登录 |
我记得有一次,一个客户的数据库流量突然在周末暴增。正常情况周末流量应该下降才对。一查,好家伙,有人在内网用SQL注入拖数据。这就是典型的异常检测立功了。
避坑指南:我曾经犯过一个错误——基线设得太死。比如认为“登录时间必须在9点到18点”。结果有个研发团队经常晚上加班,被误报淹没了。后来我学乖了,基线要按部门、按角色分开建,别一刀切。
异常检测的常用方法
- 统计方法:均值、标准差、百分位数。简单但有效。
- 机器学习:孤立森林、自编码器。适合处理高维数据。
- 规则引擎:比如“同一IP在1分钟内登录失败超过5次”。
我个人习惯先用统计方法快速过滤,再用机器学习做深度分析。别一上来就上AI,容易把简单问题复杂化。
4.3 基于威胁情报狩猎
这个方法最直接——用已知的坏人信息,去查自己家里有没有被污染。
核心思想:将外部威胁情报(IOC)与内部日志进行碰撞匹配。
说白了,就是拿着黑名单去查。但这里有个坑——很多人以为威胁情报就是IP黑名单。其实远不止这些。
威胁情报的层次
| 类型 | 举例 | 有效期 |
|---|---|---|
| IP地址 | 185.xxx.xxx.xxx | 几小时到几天 |
| 域名 | evil.com | 几天到几周 |
| Hash值 | a1b2c3d4... | 永久(文件不变) |
| YARA规则 | 检测特定恶意代码模式 | 长期有效 |
| TTPs | 使用PowerShell无文件攻击 | 战术层面长期有效 |
实战案例:
有一次,我们收到一份情报,说某个C2域名正在活跃。我立刻在DNS日志里搜这个域名。结果发现,三天前就有内网机器解析过它。顺着这条线,我们找到了那台被控的服务器,及时清理了后门。
如果当时没有用威胁情报去碰日志,这个后门可能潜伏好几个月。
威胁情报狩猎的注意事项
- 情报要新鲜:过期的IP情报基本没用。我建议用商业情报源,免费的情报质量参差不齐。
- 要结合上下文:别看到一个IP匹配就报警。那个IP可能是CDN节点,误报率很高。
- 自动化匹配:手动查太慢了。我习惯写脚本,每天自动跑一次碰撞。
我的经验:威胁情报狩猎最适合用来发现“已知威胁”。对于0day或者定制化攻击,效果有限。所以我会把它和假设驱动狩猎结合起来用——情报给线索,假设给方向,两者互补。
三种方法如何选?
你可能会问,到底该用哪种?我的建议是:
- 资源有限:先做基于威胁情报的狩猎,成本最低,见效快。
- 有数据基础:加上异常检测,能发现未知威胁。
- 想深入对抗:必须做假设驱动狩猎,这才是高级威胁狩猎的精髓。
嗯,这三种方法没有绝对的优劣。我见过只用威胁情报就抓到APT的团队,也见过用假设驱动但一无所获的情况。关键还是看你怎么用,以及你对攻击者的理解有多深。
记住一句话:狩猎不是工具竞赛,而是思维竞赛。方法论是骨架,你的经验才是血肉。