jaradat13/aegis
GitHub: jaradat13/aegis
面向隔离网络 SOC 环境的离线优先事件响应编排器,提供进程遏制、网络隔离、取证收集与可验证审计日志等能力。
Stars: 0 | Forks: 0
# Aegis IR




专为隔离网络 SOC 和实验室环境设计的离线优先事件响应编排器。它提供了一个零依赖的 Python CLI 和一个本地 Web dashboard,用于进行遏制、取证分类、cron 回滚、签名审计日志记录以及离线响应建议。
## 功能
- 终止可疑进程,并生成带有签名的审计记录。
- 通过 `ip link set down` 隔离网络接口。
- 从日志、配置、二进制文件以及操作员指定的路径中收集取证分类 tarball。
- 对 cron 配置进行快照,并可回滚至已知的良好基线。
- 采用仅追加模式的 JSONL 审计日志,具备 HMAC 签名和哈希链。
- 基于本地规则提供离线 LLM 风格的建议,无任何网络依赖。
- 对破坏性操作默认执行 Dry-run(预演)。
## 安装
```
python -m venv .venv
source .venv/bin/activate
pip install -e .
```
该应用在运行时仅使用 Python 标准库模块,因此也可以直接从检出的代码中运行:
```
python -m aegis_ir.cli --help
```
## CLI
默认情况下,所有状态都存储在 `~/.local/state/aegis-ir` 目录下。可以通过 `--state-dir` 或 `AEGIS_IR_STATE` 进行覆盖。
```
aegis-ir kill-process 4242 --reason "unknown binary beaconing"
aegis-ir kill-process 4242 --reason "confirmed malicious process" --execute
aegis-ir isolate-interface eth0 --reason "contain C2 traffic"
aegis-ir isolate-interface eth0 --reason "contain C2 traffic" --execute
aegis-ir collect-triage INC-2026-001 --path /var/log --path /tmp/suspicious.bin --execute
aegis-ir save-cron-baseline known-good
aegis-ir rollback-cron known-good
aegis-ir rollback-cron known-good --execute
aegis-ir suggest "cron persistence and C2 beacon"
aegis-ir audit-verify
aegis-ir audit-tail --limit 20
```
## 仪表板
```
python -m aegis_ir.cli dashboard --host 127.0.0.1 --port 8765
```
打开 `http://127.0.0.1:8765`。Dashboard 提供与 CLI 相同的工作流,并显示最近的已签名审计条目。
## 安全模型
除非传入 `--execute` 参数或在 Dashboard 中勾选 Execute 复选框,否则遏制操作均以 dry-run 模式执行。实际执行的进程终止和网络隔离操作需要适当的 OS 权限。cron 回滚的默认路径为 `/etc`,因此在生产环境中应将其限制为受信任的操作员使用。
## 取证分类
默认的取证分类收集会尝试包含常见的 Linux 事件响应工件:
- `/var/log/auth.log`
- `/var/log/secure`
- `/var/log/syslog`
- `/var/log/messages`
- `/var/log/audit`
- `/etc/passwd`
- `/etc/group`
- `/etc/crontab`
- `/etc/cron.d`
- `/tmp`
缺失的路径会被记录在审计详情中,不会导致收集过程失败。
## 审计完整性
每项操作都会写入一条 JSONL 审计条目,其中包含时间戳、执行者、操作、目标、详情、前一条目的哈希值、HMAC 签名以及当前条目的哈希值。`aegis-ir audit-verify` 用于验证签名和链的连续性。
签名密钥在首次运行时于本地生成,保存在 `audit.key` 文件中,文件权限模式为 `0600`。
## 测试
```
python -m unittest discover -s tests
```
标签:PB级数据处理, Python, 子域名变形, 安全运维, 库, 应急响应, 数字取证, 文档结构分析, 无后门, 离线优先, 网络信息收集, 自动化脚本, 逆向工具