AIDE 做什么
AIDE(Advanced Intrusion Detection Environment)为关键文件建立哈希基线,之后定期比对,可以发现配置被篡改、后门文件落地这类变化。它的价值取决于两点:基线必须在确认干净的系统上初始化;基线库本身要放在攻击者改不到的位置,否则比对结果不可信。
基本信息
| 适用平台 | RHEL / CentOS 系与 Debian / Ubuntu 系 |
|---|---|
| 工具 | aide |
| 风险等级 | 中 |
| 基线库路径 | /var/lib/aide/ |
| 建议频次 | 每日执行一次并把报告送到集中位置 |
典型使用场景
- 关键系统文件与配置文件的篡改检测
- 合规要求中的文件完整性监控项
- 应急响应时快速定位被改动的文件
- 变更窗口前后对比系统文件状态
- 建立可长期维护的文件完整性台账
- 与配置管理结合发现计划外变更
初始化与发布基线
初始化与发布基线
sudo apt-get install -y aide || sudo yum install -y aide # 安装工具
sudo aideinit || sudo aide --init # 生成基线库
sudo cp /var/lib/aide/aide.db.new.gz /var/lib/aide/aide.db.gz # 发布为正式基线
sudo aide --check # 立即验证一次比对能否正常运行定期比对与报送
定期比对与报送
sudo aide --check --report=file:/tmp/aide-report.txt # 把报告输出到文件
# 建议挂到 cron 每日执行,并把报告送到运维邮箱或监控系统
grep -E '^(Added|Removed|Changed)' /tmp/aide-report.txt | head # 摘要查看变更类型输出与判读
| 输出 | 含义 | 注意点 |
|---|---|---|
| Added | 基线中不存在的新文件 | 后门与临时文件落地的常见信号 |
| Removed | 基线中存在但已消失的文件 | 可能是被清理或误删 |
| Changed | 内容或属性与基线不一致 | 需与变更记录逐一核对 |
| 排除规则 | 不纳入比对的目录与文件 | 日志与缓存目录应排除 |
| 基线库 | 用于比对的数据库文件 | 需防篡改,见下方说明 |
基线必须在已确认干净的系统上初始化:在已经被入侵的机器上建基线,之后的比对结果会系统性失真。
基线库要防篡改:放在只读挂载或远程存储上,否则攻击者可以同步修改基线来掩盖痕迹。
日志与缓存这类高频变化的目录要写进排除规则,否则每次比对报告全是噪声,最后没有人会去看。