pat-selby/linux-security-monitoring
GitHub: pat-selby/linux-security-monitoring
一个系统化的 Linux 安全监控与事件响应实验项目,教授如何配置审计规则、分析日志、保全证据并完成根因分析。
Stars: 0 | Forks: 0
# Linux 安全监控与事件响应
**工具:** auditd · ausearch · Linux CLI · 日志分析 · 证据文档化
**类型:** 网络安全实验室 — 安全监控与取证
**年份:** 2026
## 概述
本项目包含两个相互关联的实验:配置 **Linux 审计守护进程 (auditd)** 以监控文件系统活动,并对运行中的 Linux 系统执行完整的 **事件响应** 调查 —— 包括证据保全的监管链和根因分析。
## 研究问题
如何利用 Linux 原生审计框架实时检测未经授权的文件修改?在运行中的系统上,合规的监管链事件响应流程是怎样的?
## 第 1 部分 — Linux 审计日志分析 (auditd)
### 我做了什么
**设置**
- 配置 `auditd` 监控规则,以监视敏感文件和目录
- 使用 `auditctl` 设置审计规则,记录读取、写入、执行和属性变更
**调查**
- 使用 `ausearch` 查询审计日志中的特定事件
- 追溯未经授权的文件修改至特定的进程和用户账户
- 将修改行为映射到模拟的攻击事件
- 识别每个事件的责任进程、时间戳和用户
### 关键命令
```
# 在敏感文件上添加 watch rule
auditctl -w /etc/passwd -p wa -k passwd_changes
# 在审计日志中搜索特定 key
ausearch -k passwd_changes
# 按时间范围搜索
ausearch --start today --end now
# 按 process ID 搜索
ausearch -p
# 生成审计报告
aureport --summary
```
### 样本发现
| 事件 | 文件 | 进程 | 用户 | 时间 |
|-------|------|---------|------|------|
| WRITE | `/etc/passwd` | `vim` | `attacker` | [时间戳] |
| EXECVE | `/bin/bash` | `bash` | `root` | [时间戳] |
## 第 2 部分 — 事件响应与证据文档化
### 我做了什么
**证据保全**
- 通过记录任何更改之前的系统状态来维护监管链
- 捕获易失性数据:正在运行的进程、网络连接、已登录用户
- 保护日志文件以防止篡改
**根因分析**
- 分析系统日志以重建攻击时间线
- 识别初始入口点和横向移动路径
- 附带时间戳和日志引用记录发现结果
**交付成果**
- 生成了一份结构化的根因分析报告,包含:
- 攻击时间线
- 证据工件
- 3 条预防性控制建议
### IR 命令参考
```
# Capture volatile data
ps aux # Running processes
netstat -tulpn # Active connections
who # Logged-in users
last # Login history
# 保留日志
cp /var/log/auth.log ./evidence/
cp /var/log/syslog ./evidence/
sha256sum ./evidence/* # Hash for chain of custody
# 审查 authentication events
grep "Failed password" /var/log/auth.log
grep "sudo" /var/log/auth.log
```
## 仓库结构
```
linux-security-monitoring/
├── README.md
├── audit-lab/
│ ├── audit_rules.txt
│ ├── ausearch_queries.md
│ └── findings.md
├── incident-response/
│ ├── evidence_collection.md
│ ├── root_cause_analysis.md
│ └── recommendations.md
└── notes/
└── lab_notes.md
```
## 展示的技能
- Linux 审计守护进程配置 (`auditd`, `auditctl`)
- 审计日志查询 (`ausearch`, `aureport`)
- 文件系统活动监控
- 易失性证据收集
- 监管链文档化
- 根因分析与报告
- 预防性控制建议
## 调查员
**Patrick Selby**
网络安全理学学士 — Grambling State University
[GitHub](https://github.com/pat-selby) · [LinkedIn](https://www.linkedin.com/in/patrick-ennin-selby-136253301) · [作品集](https://portfolio-v2-gzkg.vercel.app)
标签:auditd, ausearch, bash, BurpSuite集成, HTTP工具, osquery, Root Cause Analysis, Syslog, vim, 子域名变形, 安全实验室, 审计日志, 库, 应急响应, 应用安全, 数字取证, 文档结构分析, 无线安全, 溯源分析, 网络安全, 网络安全审计, 自动化脚本, 证据保全, 运维安全, 隐私保护