核心是聚焦高风险入口点和行为模式:监控敏感二进制属性变更、非常规路径执行及内核级加载,组合审计模块,锁定setuid文件,捕获/tmp等目录执行,启用内核完整性保护,并关联多源信号分析攻击链。

监控关键系统二进制程序执行环境是否被篡改,核心不是“全量扫描”,而是聚焦高风险入口点和行为模式:盯住敏感二进制的属性变更、异常执行路径、以及内核级加载行为。审计模块(如 Linux auditd、Windows ETW/WPP、或基于 VBS 的内存完整性)需组合使用,而非单一启用。
锁定高价值目标二进制,精准布控 -p a 规则
攻击者极少直接覆写所有可执行文件,但频繁篡改带 setuid 权限或广泛调用的核心工具。优先监控以下路径:
- /usr/bin/sudo、/bin/su、/usr/bin/passwd、/bin/ping
- /usr/bin/crontab、/usr/bin/chsh、/usr/bin/newgrp
- 用
find /usr/bin /bin -type f -perm -4000 2>/dev/null动态发现当前所有 setuid 文件,纳入规则
每条规则必须使用 -p a(属性变更),而非 -p w(写入)。因为 chmod +s、chown root、软链接劫持等提权前置操作均触发属性变更,但完全绕过写入监控。
捕获非常规路径执行行为,堵住临时目录后门
恶意代码常释放到 /tmp、/dev/shm、/var/tmp 并直接执行,避开对已知路径的监控。需补充如下 auditd 规则:
auditctl -a always,exit -F path=/tmp -F perm=x -k exec_in_tmpauditctl -a always,exit -F path=/dev/shm -F perm=x -k exec_in_shmauditctl -a always,exit -F path=/var/tmp -F perm=x -k exec_in_vartmp
这类规则不依赖文件名,只捕获任意可执行文件在高危目录中的首次运行事件,是识别无文件攻击的关键一环。
启用内核级完整性保护,阻断未签名二进制加载
仅靠用户态审计日志无法阻止篡改,必须配合底层防护:
- Linux:启用 kernel lockdown 模式 + IMA/EVM 签名验证,限制未签名模块和内核参数修改
- Windows:开启 基于虚拟化的安全(VBS) 和 内存完整性(HVCI),强制校验所有内核驱动与系统二进制签名
- 云环境(如 AKS):结合 节点镜像签名验证 与 eBPF 运行时检测,拦截 LD_PRELOAD 注入或 LKM 模块加载
这些机制在加载前拦截非法二进制,与 auditd 日志形成“事前阻断+事后溯源”闭环。
关联分析异常行为,识别完整攻击链
孤立日志价值有限,需将审计事件与其它信号交叉验证:
- 当
binary_attr_sudo触发后,立即检查是否有exec_in_tmp事件在前后 5 分钟内发生 - 发现
exec_in_shm同时伴随大量 DNS 查询或 ICMP 回应,高度提示 VoidLink 类恶意软件活动 - 若 auditd 记录到
/usr/bin/sudo属性变更,而 Windows Event Log 中无对应管理员操作记录,即为可疑篡改
通过 SIEM 或自建规则引擎聚合多源信号,才能从单点告警升级为攻击阶段判定。









