Dimitriskatsanos42/SOC-Monitoring-Threat-Detection-Framework
GitHub: Dimitriskatsanos42/SOC-Monitoring-Threat-Detection-Framework
一个轻量级、可扩展的安全运营框架,提供日志采集、实时威胁检测、事件存储与多渠道告警通知能力。
Stars: 0 | Forks: 0
# SOC 监控与威胁检测框架
[]()
[](LICENSE)
[]()
## 概述
一个轻量级、可扩展的框架,用于收集日志 (logs)、分析潜在威胁、存储事件并发送通知。
## 核心组件
- Collectors:从数据源(Windows / Linux)收集 logs — [collectors](collectors)
- Analyzers:检测/规范化逻辑并生成 alerts — [analyzers](analyzers)
- Storage:持久化层(SQLite/Postgres 抽象)— [storage/database.py](storage/database.py)
- Alerts/Notifier:发送通知(Telegram/Discord/Email)— [alerts/notifier.py](alerts/notifier.py)
- API & Dashboard:FastAPI endpoints 及简易 dashboard UI — [api/routes.py](api/routes.py), [dashboard/templates/dashboard.html](dashboard/templates/dashboard.html)
## 快速开始
1. 创建并激活 virtualenv(Windows / PowerShell):
```
python -m venv .venv
.\.venv\Scripts\Activate.ps1
```
2. 安装依赖:
```
pip install -r requirements.txt
```
3. 配置环境(可选):
某些设置(例如通知)由环境变量控制。请查看并编辑 [config/settings.py](config/settings.py) 了解详情。
4. 运行:
- 完整运行(collectors + analyzer + API):
```
python main.py
```
- 或者仅运行 API:
```
uvicorn api.routes:app --host 0.0.0.0 --port 8080
```
## 该 repository 目前实现的功能
- 主 entrypoint (`main.py`) 会初始化数据库、collectors、analyzer 和 notifier,并启动 FastAPI server。
- 事件存储通过 `storage/database.py` 实现,支持不同类型的 DB,如 SQLite 或 Postgres(请查看 `config/settings.py`)。
## 清理无用文件
在代码审查期间,发现并删除了空的/未使用的文件 `analyzers/log_parser.py`。
## 建议与后续步骤
- 添加 `env.example` 文件,包含所有重要的环境变量。
- 集成测试(针对 `analyzers` 的 unit tests 和针对 `api` endpoints 的 integration tests)。
- CI pipeline(lint、tests、security checks)和代码格式化(Black / isort)。
- Containerization:使用 `Dockerfile` 和 `docker-compose` 进行本地开发和连接 DB。
- Logging & Monitoring:配置 structured logging 和 health endpoints。
## 操作说明
- 请检查在生产环境中存储的 credentials — 切勿将其 commit。
- collectors 在 `main.py` 中是动态导入的,必须根据环境(Windows 还是 Linux)进行激活。
## 贡献
欢迎任何改进 — 请提交 pull request 并描述您的目的和具体更改。
## 联系方式
如果需要,我可以:
- 在本地执行一次冒烟测试 (smoke-run),并检查 logs/错误。
- 实现 unit tests 和 CI configuration。
标签:AMSI绕过, AV绕过, FastAPI, SQLite, 告警通知, 威胁检测, 安全运营, 扫描框架, 测试用例, 网络测绘, 逆向工具, 速率限制