Linux权限审计是持续闭环过程,需通过多源日志交叉验证定位真实操作主体,识别被sudo、su、容器等掩盖的权限使用行为。

Linux系统权限审计不是一次性的检查,而是从识别用户行为出发、持续追踪权限流向、验证控制效果的闭环过程。关键在于把“谁在用什么权限、做了什么事、是否合规”串成可追溯、可验证、可响应的链条。
定位真实操作主体:不止看用户名,要看会话上下文
单纯查/etc/passwd或id命令输出,只能看到静态账户信息。真正的操作主体可能被sudo、su、ssh代理、容器命名空间或SSH密钥转发掩盖。需结合多源日志交叉验证:
- 检查/var/log/auth.log(或journalctl -u sshd -u sudo)中登录、提权、命令执行的完整时间线
- 对sudo操作,启用/var/log/sudo-io回放命令流
- 容器环境需同步采集containerd或docker daemon日志,关注--user、--cap-add等参数
映射权限实际影响范围:从配置项到文件/进程/网络能力
权限不等于配置。一个sudoers条目允许运行/usr/bin/systemctl,但实际影响取决于该命令调用的unit文件、依赖的systemd服务、以及目标服务自身的Capability设置。审计时要向下穿透:
Zynq‑7000 / Zynq UltraScale+ 硬件调试技能。适用于 Xilinx Zynq(Cortex‑A9/A53 + FPGA)Linux 环境,调试 I2C、I2S、UART、GPIO 等外设。包括设备树配置、内核驱动、用户空间调试工具、交叉编译和常见问题排查,支持 PetaLinux 开发。
- 用getcap和capsh --print确认二进制文件与进程的真实capabilities
- 对敏感目录(如/etc/cron.d、/var/www)使用find . -perm -4000 -o -perm -2000定位SUID/SGID位,并逐个验证用途必要性
- 用ss -tunlp或lsof -i比对监听端口与对应进程的UID/GID,识别越权网络暴露
建立变更-行为-告警联动机制:让审计结果驱动响应
审计报告若不能触发动作,就只是快照。闭环的核心是把权限变更(如新增sudo规则、加入wheel组)与后续行为日志绑定,并设置阈值触发干预:
- 用inotifywait监控/etc/sudoers、/etc/group等关键文件,变更即写入审计事件并通知SIEM
- 对高危命令(如rm -rf /、dd if=/dev/zero)在auditd中配置-a always,exit -F arch=b64 -S execve -F exe=/usr/bin/bash -F argc>=2,捕获完整参数
- 将审计日志接入ELK或Grafana,配置规则:同一非root用户72小时内sudo执行超5个不同服务管理命令,自动标记为“异常运维模式”并暂停其sudo令牌
定期验证控制有效性:用红队思维做权限绕过测试
策略写了不等于生效。必须模拟攻击者视角,验证权限限制能否真正阻断越权路径:
- 以受限用户身份尝试通过LD_PRELOAD加载自定义so劫持sudo调用,检验env_reset是否启用
- 测试是否可通过vim -c ':!sh'、less !sh等编辑器逃逸方式绕过命令白名单
- 检查/proc/sys/kernel/unprivileged_userns_clone是否关闭,防止普通用户创建user namespace突破隔离
闭环不在工具堆砌,而在每个环节都明确“谁触发、依据什么、如何确认已生效”。从User出发,最终回到Others——即所有可能受影响的系统组件与关联账户——才算真正完成一次可信的权限审计。

















