ardanull/itdrp

GitHub: ardanull/itdrp

一个结合规则引擎与机器学习的轻量级威胁检测与响应平台,提供日志采集、异常检测、威胁情报富化和自动化响应能力的完整 MVP 实现。

Stars: 0 | Forks: 0

# ITDRP — 智能威胁检测与响应平台 (Mini-SIEM + SOAR) 一个生产级质量的 **MVP**,用于摄取日志,结合**基于规则** + **ML 异常**信号检测威胁,利用**威胁情报**丰富事件,分配**风险评分**,并通过自动化响应钩子生成**告警**。 ## 功能特性 ### 摄取与标准化 - JSON 事件摄取端点 - 标准化为通用 schema(timestamp, src_ip, user, action, service, host, tags) ### 检测 **基于规则:** - 时间窗口内的暴力破解登录尝试(按 IP + 按用户) - 端口扫描检测(时间窗口内大量不同的目标端口) - 可疑的权限提升模式(sudo/root) **基于 ML (MVP):** - 利用行为特征(登录时间、失败率、IP 熵代理等)计算 Isolation Forest 异常分数 ### 丰富 - 威胁情报查询(AbuseIPDB + VirusTotal)为可选功能: - 如果配置了 API 密钥,丰富功能将自动运行,并将结果缓存至 Redis。 ### 风险评分 加权风险评分: - 规则严重性 (0.4) - ML 异常 (0.4) - 威胁情报匹配 (0.2) ### 响应 (默认安全) - 将动作发送到内部 `actions` 索引,并记录其*将执行*的操作。 - 可选:通过环境变量开关启用真实动作(iptables / 用户锁定)。 ### 存储与 UI - Elasticsearch 索引:`events`, `alerts`, `actions` - 包含 Kibana 用于仪表盘展示 ## 快速开始 ### 1) 前置条件 - Docker + Docker Compose ### 2) 运行 ``` cp .env.example .env docker compose up --build ``` ### 3) 打开 Kibana - Kibana: http://localhost:5601 ### 4) 发送示例流量 在另一个终端中: ``` docker compose exec backend python -m itdrp.simulator.run --mode demo --target http://localhost:8000 ``` ## API - `GET /health` — 健康检查 - `POST /ingest` — 摄取单个事件 (JSON) - `POST /ingest/bulk` — 摄取多个事件 - `GET /alerts` — 列出最近的告警 - `POST /train` — (重新) 使用提供的事件训练 ML 基线 (可选) OpenAPI 文档: - http://localhost:8000/docs ## 项目结构 ``` ITDRP/ backend/ # FastAPI service pipeline/ # Optional logstash config (ready-to-use) docs/ # Architecture + threat model samples/ # Sample logs + demo events docker-compose.yml .env.example ``` ## 注意事项 (安全 + 保障) - 响应动作**默认为非破坏性**。 - 丰富功能的密钥是可选的。 - 这是一个用于作品集和学习的 MVP;加固建议请参阅 `docs/hardening.md`。 ## 许可证 MIT
标签:AMSI绕过, Apex, AV绕过, CSV导出, Docker, Elasticsearch, FastAPI, Isolation Forest, ITDR, PE 加载器, Python, Redis, 免杀技术, 内容过滤, 威胁情报, 威胁检测, 安全运营, 安全防御评估, 开发者工具, 开源安全项目, 异常检测, 扫描框架, 插件系统, 搜索引擎查询, 无后门, 暴力破解检测, 机器学习, 权限提升检测, 端口扫描检测, 网络安全, 自动化响应, 请求拦截, 越狱测试, 迷你SIEM, 逆向工具, 隐私保护, 风险引擎, 风险评分