首页/安全/安全加固速查/UID 0 账号核查(仅允许 root)
主机加固基线90 条

UID 0 账号核查(仅允许 root)

检查 /etc/passwd 中 UID 为 0 的账号:任何非 root 的 UID 0 账号都等同于超级用户,是攻击者留后门与提权的经典手法,发现即清理。

安全加固速查安全更新于 2026-10-12
加固项非 root 账号不得拥有 UID 0
适用平台Linux(RHEL/CentOS/Debian/Ubuntu)
风险等级高
判定标准UID 0 账号列表只应包含 root

核查:列出全部 UID 0 账号

核查:列出全部 UID 0 账号
awk -F: '($3 == 0) { print $1 }' /etc/passwd
# 预期输出只有 root 一行

处置:先锁定、再决定降权或删除

处置:先锁定、再决定降权或删除
# 锁定并禁用 shell(保留文件属主,避免出现无属主文件)
usermod -L -s /usr/sbin/nologin rogue0
awk -F: '($3 == 0) { print $1 }' /etc/passwd   # 复核
处置前确认该账号是否被业务直接使用:userdel 会造成文件属主悬空,事后需用 find / -nouser 补扫。

易错点

  • 必须按 UID 判断而不是用户名:账号可以改名伪装成 dbadmin,但 UID 0 的权限不变
  • 审计时同时看 /etc/passwd 与 /etc/shadow 的修改时间,后门账号往往伴随这两个文件近期被改

数据来源与参考

  • CIS Linux Benchmark:访问控制章节(Ensure UID 0 account is root only)
  • 等保 2.0 三级:身份鉴别与访问控制要求

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌