kevin9327/protocol-sift-sentinel
GitHub: kevin9327/protocol-sift-sentinel
这是一个自主事件响应代理,通过证据关联和自我修正,快速分诊安全事件并生成审计报告。
Stars: 0 | Forks: 0
# 协议 SIFT Sentinel
Protocol SIFT Sentinel 是针对 FIND EVIL! 挑战的自主事件响应分诊代理。它读取混合的端点、网络、SSH 和 DNS 证据,构建时间线,将微弱信号关联为事件假设,执行自我修正流程,并输出便于评审的事件报告及审计追踪。
该项目受 SANS SIFT 和 Protocol SIFT 理念启发:保留证据,将每个结论追溯至可观察的事实,并要求代理在建议遏制措施前展示其推理过程。
## 功能概述
1. 从 CSV/JSONL 日志加载证据。
2. 将事件标准化至统一时间线。
3. 检测暴力破解、Web Shell、可疑 DNS 及凭证滥用。
4. 将事件关联为排序的事件假设。
5. 运行自我修正流程,挑战早期假设。
6. 生成包含证据 ID 和 SHA-256 哈希值的 Markdown 与 JSON 报告。
## 快速开始
```
python -m protocol_sift.cli --evidence evidence --out output
```
生成的文件:
- `output/incident_report.md`
- `output/incident_report.json`
- `output/audit_log.jsonl`
在线演示:
https://kevin9327.github.io/protocol-sift-sentinel/
视频演示:
https://youtu.be/pKnt5Ij1VkA
## 演示场景
内置证据模拟了一次小型入侵事件:
- 针对 `app-admin` 的 SSH 暴力破解尝试。
- 来自同一 ASN 的成功登录。
- 上传可疑的 `invoice.php` 文件。
- 向新发现域名进行 DNS 信标通信。
- 启动与 PHP Web Shell 一致的进程。
首轮分析最初将 SSH 事件视为孤立事件。修正流程将其与 Web Shell 和 DNS 活动关联,随后将发现升级为协同入侵。
## 代理设计
```
Evidence loader
-> normalizer
-> detector pass
-> correlation graph
-> self-correction pass
-> report writer
```
代理不会隐藏不确定性。每项发现都包含置信度、支持证据 ID,以及提升或驳回的原因。
## 提交文档
- 架构图与边界:`docs/architecture.md`
- 准确性与限制报告:`docs/accuracy_report.md`
- 执行跟踪:`docs/execution_trace.md`
- Devpost 说明文档:`docs/DEVPOST_COPY.md`
## 技术栈
- Python 3.11 标准库
- 确定性证据关联规则
- Markdown 和 JSON 报告生成
- SHA-256 证据哈希
## 黑客松适配性
本提交专注于实用的自主事件响应流程:代理能够分诊嘈杂证据,修正自身结论,并向响应人员提供审计就绪的报告,而非黑箱答案。
标签:Homebrew安装, 逆向工具, 速率限制, 防御加固