应聚焦/etc、/etc/nginx等高危路径,用find命令一次性筛查.conf等敏感文件的全局可写、组可写、SUID、SGID四类权限风险,再通过ls、stat、readelf等工具验证实际利用可能性。

直接查真实攻击面,别扫全盘——重点盯住配置路径、敏感文件类型和四类危险权限模式。
聚焦三类高危目录,跳过无关扫描
攻击者不会遍历整个文件系统,而是直扑配置中枢。优先检查:
-
/etc/:核心配置区,
/etc/shadow、/etc/sudoers、/etc/crontab是审计必查项 -
/etc/nginx 和 /etc/apache2:Web服务入口,
.conf文件若权限宽松,可被注入恶意指令 -
/var/www/*/config* 和 /opt/*/conf/:应用级配置常见位置,
.env、settings.py、config.yml等极易泄露密钥或数据库连接串
用一条 find 命令捕获四类风险权限
不用分多次跑命令,合并条件一次到位:
sudo find /etc /etc/nginx /etc/apache2 /var/www /opt -type f \( -name "*.conf" -o -name "*.cfg" -o -name "*.yml" -o -name "*.env" -o -name "settings.py" -o -name "config.php" \) \( -perm -o=w -o -perm -g=w -o -perm -4000 -o -perm -2000 \) 2>/dev/null
这条命令精准命中:
Linux系统管理专家,覆盖12大模块:用户权限、SSH、存储、网络、systemd、防火墙、日志监控、备份恢复、TLS证书、Ansible、容器、IaC。提供配置、验证、加固、监控、备份、自动化、故障排查、回滚闭环。关键词:useradd、sudo、sshd_config、chmod、SEL...
- 其他用户可写(
-perm -o=w)→ 如-rw-rw-rw-,任意账号都能覆盖 - 所属组可写(
-perm -g=w)→ 若组内含普通用户,等同开放写入 - SUID(
-perm -4000)→ 普通用户执行时继承 root 权限 - SGID(
-perm -2000)→ 目录下新建文件自动继承父目录组,但若配合可写权限则易被滥用
确认风险后必须验证是否真能利用
看到权限宽松不等于立刻定性为高危,要结合上下文判断实际影响:
- 对可写配置文件,运行
ls -l /path/to/file和stat -c "%U:%G %a" /path/to/file,确认属主是 root 但权限却为 664 或 644 —— 这属于典型“权限过松” - 对 SUID 文件,先用
readelf -l /path/to/binary | grep 'INTERP'判断是否动态链接,再用strings /path/to/binary | grep -i 'exec\|system\|sh'查是否含危险函数调用 - 对可疑目录(如
/etc/nginx/conf.d),手动测试:sudo -u nobody touch /etc/nginx/conf.d/test.tmp,看是否真能以低权限用户写入
修复时严格遵循基线,拒绝经验主义
别凭记忆设 755 或 644,每个关键文件都有明确合规要求:
-
/etc/shadow必须为 600,属主 root,属组 shadow,其他用户无任何权限 -
/etc/ssh/sshd_config应为 600,防止未授权修改导致 SSH 服务拒绝加载 -
/etc/sudoers必须是 440,且属主 root、属组 sudo(RHEL系)或 root(Debian系) - 所有含密钥、证书、数据库连接串的配置文件,权限不得高于 600
更稳妥的做法是用 lynis audit system 扫描 200+ 项权限基线,或通过 InSpec 编写可执行检查项,例如:
describe file('/etc/shadow') do
its('mode') { should cmp '0600' }
its('owner') { should eq 'root' }
its('group') { should eq 'shadow' }
end

















