攻击结束后,完整的攻击溯源不靠猜,靠的是把日志当成案发现场的指纹和脚印来逐帧还原核心路径是“锁定时间线、串联日志链、还原攻击链、产出可追溯报告”这四步闭环。
溯源第一步:先定时间线,再谈查日志
攻击结束≠事件结束,大部分溯源工作失败,往往是因为一开始就陷入海量日志里捞针,业内专家指出,有效的溯源必须从“时间锚点”切入先确定攻击者最早进入的时间和最后离开的时间,再去检索日志,效率会翻倍。
从哪里找时间锚点
- 告警平台:SIEM或IDS的告警时间,是第一个线索。
- 防火墙/IPS日志:对外部IP的阻断或放行记录,能定位扫描或爆破窗口。
- 主机登录日志:Linux的
/var/log/secure,Windows的安全事件ID 4624/4625,是找出异常登录时间最直接的证据。
拿到时间锚点后,要立刻画一条粗粒度时间轴,手动记也行,用Excel拉也行,关键是先把“几点几分发生了什么”的骨架立起来,后续每确认一个日志证据,就往上填一块肉,这条时间轴,最终就是你溯源报告的主干。
核心主体:四大日志源是溯源的“目击证人”
溯源不是只看一种日志,而是要让不同日志互相印证。单条日志会撒谎,多条日志交叉验证才不会出错,下面这四类日志源,是你必须拜访的“证人”。
网络层日志:攻击者的“来路”
网络层日志解决“从哪来”的问题,主要看:
- 防火墙会话日志:攻击IP、目标端口、协议、持续时长,重点关注非工作时间段、低频长连接或高频短连接的流量特征。
- DNS解析日志:攻击者与C2(命令控制服务器)通信时,必然产生DNS请求,查一查有没有访问罕见域名、高随机性子域名的记录,这是定位挖矿木马和远控木马的关键证据。
- 代理服务器日志:如果有Web代理,能看到完整的HTTP请求URL、User-Agent、响应码,攻击者下载恶意工具的路径、上传数据的接口,在这里一目了然。
主机层日志:攻击者的“动作”
主机层日志解决“干了什么”的问题,这是溯源报告里含金量最高的部分。
- 登录日志:不止看成功登录,更要看大量失败后的成功登录(暴力破解得手),以及异常来源IP的登录。
- 进程创建日志:Windows的Sysmon事件ID 1和Linux的
auditd,能记录父进程和子进程关系,攻击者执行whoami、ipconfig、
wget下载脚本,这些命令都会留下进程链,真正的溯源高手,靠进程树就能还原攻击者的操作顺序。 - 文件系统日志:文件创建时间、修改时间、访问时间(MAC时间),找到攻击者上传的Webshell、落地恶意文件,用文件哈希去威胁情报平台反查,能定位到具体攻击家族。
应用层日志:攻击者的“入口”
很多攻击是打应用漏洞进来的,Web日志是溯源的第一现场。
- Web访问日志:重点关注
POST请求、目录穿越特征、SQL注入关键字(如UNION SELECT)、上传接口的multipart/form-data请求,攻击payload就藏在URL和请求体里。 - 数据库慢查询日志:攻击者拖库时,SQL语句往往是全表查询,且耗时异常,慢查询日志能客观记录这种异常查询行为。
- 中间件日志:Tomcat、Nginx的access log和error log,能还原攻击者探测漏洞、访问恶意路径的完整轨迹。
日志数据的横向对比表
| 日志源 | 解决什么问题 | 关键字段/事件ID | 常见攻击线索 |
|---|---|---|---|
| 防火墙 | 攻击来源和端口 | 源IP、目的端口 | 扫描行为、暴力破解 |
| DNS | C2通信和挖矿行为 | 查询域名、解析记录 | 随机域名、罕见顶级域 |
| 主机登录/进程 | 攻击者具体操作 | 4624、4688、Event ID 1 | 异常登录、可疑进程链 |
| Web访问 | 应用层攻击入口 | URL、User-Agent、状态码 | Webshell、SQL注入、文件上传 |
还原攻击链:从碎片日志拼出完整剧情
日志不是用来单条看的,而是用来串成故事的,攻击溯源的核心交付物,就是一条完整的攻击链(Kill Chain),要按这个顺序来拼:
侦察阶段到武器化阶段
这个阶段攻击者通常在踩点,日志表现比较“安静”:
- 少量404错误(扫目录)
- 大量返回相同状态码的请求(扫漏洞)
- User-Agent是自动化工具(如sqlmap、nmap脚本)
投递与利用阶段
这是攻击真正打入内部的瞬间,也是溯源的黄金证据点:
- Web日志中出现漏洞利用payload
- 系统日志中出现异常计划任务创建
- 主机日志中出现下载执行命令(如
certutil -urlcache -f、powershell -enc)
安装与持久化阶段
攻击者开始落脚了。持久化手段的日志特征非常明显:
- 注册表
Run键值变更(Windows) - 新增系统服务或计划任务
- SSH目录出现新的
authorized_keys(Linux) - 启动脚本被修改
横向移动与目标达成阶段
这是最后一步,日志表现为:
- 内网大量IP之间出现新连接
- 域控服务器出现异常登录
- 数据大量外传的流量告警
把不同阶段的日志按时间轴排列,你会看到一条从前到后的完整攻击路径,如果你只发现单一阶段的日志,大概率是丢了关键节点,需要回头重新查。
落地实操:用安全日志分析工具和开源命令做取证
纸上谈兵没用,具体做溯源时,你要动手敲命令,这类实操能力,比看一百篇分析文章都管用。
Linux主机常用溯源命令
last -f /var/log/wtmp:查看登录历史,包括异常IP和登录时间。history:查看当前用户的命令历史,但攻击者可能清理过,需要配合~/.bash_history文件的时间属性判断。grep "Accepted" /var/log/secure:筛选所有成功的SSH登录,快速定位可疑来源IP。find / -mtime -3 -name ".php":查找最近3天内被上传的PHP文件,是找Webshell的快速方法。stat webshell.php:查看文件时间戳,确认上传时间,回怼Web日志验证。
Windows主机常用排查项
- 检查事件查看器中的登录事件和进程创建事件,ID 4624、4625、4688、7045(新服务安装)。
- 查看
C:UsersPublic、C:WindowsTemp等目录下的可疑可执行文件的创建时间和数字签名。 - 使用
wevtutil qe Security /q:[System[(EventID=4624)]] /c:50 /rd:true /f:text导出登录日志,做离线分析。 - 查看计划任务和启动项,攻击者的持久化后门大概率就藏在shell:startup或计划任务里。
不要忽略反溯源:日志被删了怎么办
实战中很常见的情况是:攻击者删除或篡改了日志,你可以通过残余证据来反推:
- bash历史文件被清空:查看
/root/.bash_history的文件i节点是否还在,尝试恢复未彻底覆盖的磁盘块。 - Windowns日志被清除:用
Log Parser分析%SystemRoot%System32WinevtLogs下的备份或其他副本,或者排查Microsoft-Windows-PowerShell/Operational日志,即使攻击者清除了安全日志,PowerShell的操作记录往往被单独保存。
有一个值得强调的行业共识:攻击者能删除日志,但删不掉防护设备上的镜像流量和旁路告警,如果主机层日志被污染,就把网络层日志当作核心证据来源,同样能得出结论。
溯源报告怎么写:让结论经得起推敲
溯源到这一步,你手上已经有大量证据了,但溯源工作的价值,最终要体现在一份能落地、能汇报、能整改的报告上,内容建议用以下框架:
报告的核心内容清单
- 事件概述:攻击时间、影响范围、严重程度。
- 攻击路径图:用文字或图例画出攻击者从入口到目标资产的完整路线。
- 关键证据列表:按时间排序,列出时间、日志文件、日志内容、来源IP,证据之间要有逻辑关系。
- 攻击者画像:IP来源、使用的工具、偏好漏洞、技术能力水平分析。
- 损失评估:确认数据是否被窃取、系统是否被破坏,多数情况下,企业通过DNS隧道或加密流量的外联日志来判断数据泄露范围。
- 处置建议:针对每个攻击环节,给出堵漏措施,比如封禁IP、修补漏洞、加固口令、开启日志集中存储。
报告撰写的常见误区
很多人在报告里只写“攻击者利用漏洞上传了Webshell”,却不写下一条证据。溯源报告不是给技术人员看的,更是给管理层和安全团队看的,要让一个完全不了解背景的人,仅凭你的报告就能还原事件经过,做到这一点,你的报告才算合格。
常见问题Q&A
溯源时需要重点排查哪些安全日志分析工具?
除了上文提到的系统原生日志,还需要结合流量分析工具(如Wireshark抓包、Zeek分析会话)和终端检测响应平台(EDR)来交叉验证,EDR能补全主机层日志被清除的盲区,流量侧能还原网络通信行为,三者配合使用,大多数攻击场景都能覆盖到关键证据。
日志留存时间不够怎么办?
国内的合规要求,比如等保测评里对日志留存时间有明确要求,通常建议不少于六个月,如果留存时间不足,排查短时间窗口内的攻击尚可,但面对潜伏期长的APT攻击,或者攻击者故意在早期清除日志的情况下,溯源难度会大幅上升,这类场景下,要优先依赖流量镜像和堡垒机录像,再配合主机残留的注册表或计划任务进行时间推断,一个可行的做法是开启日志集中存储,发送到远程日志服务器或云上的Syslog平台,避免攻击者侵入本机后一并清除。
攻击者使用了代理或跳板,溯源还有意义吗?
有意义,攻击者用代理,只能隐藏来源IP,但隐藏不了攻击手法、工具特征和指令特征,即使最终IP已经无法追查,你也可以通过攻击TTPs(战术、技术和过程)的特征关联到同类攻击组织,为防范下一次攻击提供高价值情报,行业共识认为,溯源的目标是防止复现,不一定是抓到人。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/635144.html





