应监控/etc/shadow的-p wa操作、euid≠uid或auid≠uid的execve调用、特权命令-p x执行及关键配置文件-p wa变更,并将规则持久化至/etc/audit/rules.d/后运行augenrules --load加载,确保pam_loginuid.so启用以保障auid准确溯源。

要审计 Linux 系统中特权账号行为,关键不是只盯“谁是 root”,而是捕获所有真实发生的提权、切换、凭证变更和敏感操作——这些动作最终都会在内核层留下系统调用痕迹。auditd 是唯一能稳定绑定用户身份(auid)、进程行为(exe/comm)与上下文(cwd/uid/euid)的工具。
Linux AI 服务器 — 将 Linux 服务器转换为本地 AI 推理集群。使用 systemd、NVIDIA CUDA 实现无头 Linux AI,零 GUI 开销。
必须监控 /etc/shadow 的写入与属性变更
密码修改(passwd、chpasswd、usermod -p)或权限隐藏(chmod/chown)都会触发对 /etc/shadow 的写(w)或属性变更(a)。单用 -p w 不够,攻击者可能先改权限再写内容。规则应为:
-
-w /etc/shadow -p wa -k passwd_change
该规则需存入/etc/audit/rules.d/passwd.rules,再执行sudo augenrules --load持久生效。验证命令:sudo auditctl -l | grep passwd_change
重点捕获 auid ≠ uid 或 euid ≠ uid 的 execve 调用
这是识别真实提权行为最可靠的方式,覆盖 sudo -i、su、ssh -l root、甚至自定义脚本包装的场景。添加规则:
-
-a always,exit -F arch=b64 -S execve -F auid!=uid -k admin_switch -
-a always,exit -F arch=b64 -S execve -F euid!=uid -k priv_escalation
32 位系统补一条-F arch=b32。这类规则不依赖命令名,只认内核级权限变化。
盯住特权命令二进制文件的执行入口
绕过日志解析、别名或参数混淆的最简方式,就是监控 /usr/bin/sudo、/bin/su、/usr/bin/passwd 是否被调用:
-
-w /usr/bin/sudo -p x -k privileged_cmd -
-w /bin/su -p x -k privileged_cmd -
-w /usr/bin/passwd -p x -k passwd_exec-p x表示只捕获“执行”动作,精准对应提权意图,且不易被绕过。
同步审计关键配置文件与权限控制点
特权行为往往伴随配置篡改。以下路径需统一加 -p wa -k 标签:
-
/etc/sudoers和/etc/sudoers.d/(授权变更) -
/etc/passwd、/etc/group、/etc/gshadow(账号生命周期) -
/etc/ssh/sshd_config和~/.ssh/authorized_keys(远程访问后门) -
/var/log/auth.log(防止日志清理行为本身被掩盖)
查日志时聚焦三个字段,快速定位真实事件
用 sudo ausearch -k <key> -i</key> 查结果后,优先看:
-
auid:原始登录用户 ID(如auid=1001表示普通用户登录后提权,防su/sudo混淆) -
exe:实际执行程序(如/usr/bin/sudo或/bin/bash) -
success=yes:排除认证失败或权限拒绝的干扰项
若同时满足auid≠uid、exe="/usr/bin/sudo"、success=yes,基本可确认是一次有效提权。
确保 auid 可靠,否则溯源失效
检查 /etc/pam.d/sshd 和 /etc/pam.d/login 是否含:session required pam_loginuid.so
若缺失,auid 可能为 4294967295(未设置),导致无法区分“谁发起的操作”。修复后需重新登录才能生效。
不复杂但容易忽略










