EDY075/edy-shield

GitHub: EDY075/edy-shield

一款基于纯 Python 标准库开发的轻量级蓝队防御安全平台,提供文件完整性监控、日志分析和 SOC 仪表板等核心功能,无需云服务或额外 Agent。

Stars: 0 | Forks: 0

# EDY Shield 用于文件完整性、哈希分析和事件调查的现代防御性安全工具包。 ![EDY Shield Banner](https://static.pigsec.cn/wp-content/uploads/repos/cas/61/61dedead79ff54cf148e8b659efedba4ade0a0c08960589b73462dd637f37216.png) [![Python](https://img.shields.io/badge/Python-3.12-3776AB?logo=python&logoColor=white)](https://www.python.org/downloads/) [![License](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE) [![Release](https://img.shields.io/badge/Release-v2.2.0--rc-blue)](https://github.com/EDY075/edy-shield/releases) [![Tests](https://img.shields.io/badge/Tests-635%20passed-brightgreen)]() [![Coverage](https://img.shields.io/badge/Coverage-91.92%25-success)]() [![Platform](https://img.shields.io/badge/Platform-Windows%20%7C%20Linux%20%7C%20macOS-lightgrey)]()
## 概述 EDY Shield 是一个模块化的防御性安全平台,使用 **Python 3.12** 编写,具备 **100% 标准库核心**(零运行时依赖)。它结合了文件完整性监控、哈希分析、日志分析以及可配置的告警引擎,并配备了一个专业的 SOC 风格 Web 仪表板。 它解决了一个实际问题:小型安全团队和蓝队操作员需要一个轻量级、独立的工具包——无需云、无需 agent、无许可证费用——以监控关键文件、对告警进行分类,并在其自己的基础设施上调查入侵指标。 **核心能力** - 具备基线和扫描功能的文件完整性监控 - 哈希校验 (MD5, SHA-1, SHA-256, SHA-512) - 日志分析以及熵/字符串分析插件 - 带有去重功能的可配置告警引擎 - 支持暗色/浅色主题的 SOC 仪表板 - 用于自动化和集成的 REST API ## 功能 **仪表板** — 实时 KPI、健康监控、严重性图表和活动时间线。 **告警中心** — 带有筛选、排序、分页和批量操作(确认、解决、抑制、重新打开)的分类表。 **调查工作区** — 滑出式面板,包含摘要、时间线、证据、评论和历史记录选项卡。 **规则** — 查看处于活动状态的告警引擎规则及其严重性和阈值。 **资产** — 受监控资产的清单视图。 **IOC 管理器** — 用于入侵指标工作流的接口。 **日志** — 带有级别筛选的系统日志查看器。 **系统健康** — API、数据库、分析器和正常运行时间 KPI 以及插件列表。 **导出** — 将告警调查导出为 Markdown 和 JSON 格式。 **REST API** — 用于告警、健康、历史、分析和 FIM 基线的 JSON API。 **暗色 / 浅色** — 在浏览器中持久化的完整主题支持。 **响应式** — 针对桌面、平板电脑和移动设备优化的布局。 ## 截图 | | | |---|---| | ![仪表板](https://static.pigsec.cn/wp-content/uploads/repos/cas/a2/a28cce38116aa84a2cb1187bb420e711b7def8a85f00a47a446408194c1cb04a.png) | ![告警中心](https://static.pigsec.cn/wp-content/uploads/repos/cas/45/45899ec77e147d809648e244b12e10aaaeb0148f638b44f9f97896ce35fdd12a.png) | | ![系统健康](https://static.pigsec.cn/wp-content/uploads/repos/cas/74/7434746b0ebb07e60961f3485b45402a7287be5a2b9f89f2206a75aa8ba1feec.png) | ![规则](https://static.pigsec.cn/wp-content/uploads/repos/cas/d3/d3c4918aa3e651bf612356db73fd769e3455b0df3534b2f585fb0597508db582.png) | | ![设置](https://static.pigsec.cn/wp-content/uploads/repos/cas/33/333ea63f9ce65516b6d37c660d04ab31643d241e1857135fe3e882d0dbfb2041.png) | ![资产](https://static.pigsec.cn/wp-content/uploads/repos/cas/c2/c27189e123651f9deeb07f69a2faac04ff9311ed8d9b1f3f523d6492bb8fd734.png) | | ![日志](https://static.pigsec.cn/wp-content/uploads/repos/cas/1f/1fd20af7e382d10dfac3cd80fe476b7d3fca449910c84bafa48b49c1ebee38bb.png) | ![IOC 管理器](https://static.pigsec.cn/wp-content/uploads/repos/cas/95/95c6464037fbbba8f6d23eedfa5038ff56d17dae87c09848ba317e039efc9d8a.png) | ## 架构 应用程序采用分层架构,并遵循严格的单向依赖规则:**UI → 服务 → 核心**。核心层永远不会从 UI 或服务层导入。 ``` flowchart LR UI[Dashboard / CLI] --> SVC[Services] SVC --> PLG[Plugin Manager] PLG --> CORE[Core] SVC --> STORE[(SQLite Storage)] PLG --> AN["Analyzers
string · entropy · log"] PLG --> FIM["FIM
baseline · scan"] CORE --> ALG[Algorithms] CORE --> CRYPTO[Cryptography] UI --> API[REST API] API --> SVC ``` **前端** — 原生 HTML/CSS/JS 单页应用(无框架)。直接由内置的 HTTP 服务器提供服务。 **后端** — 基于 `http.server` 的 REST API(Python 标准库)。提供用于告警、健康、历史、分析、FIM 和插件的路由。 **服务** — 业务编排:告警服务、告警存储、历史记录、报告引擎、分析。 **存储** — 通过标准库实现的 SQLite。默认数据库路径可通过 `EDYSHIELD_DB_PATH` 覆盖。 **插件** — 基于契约的插件系统:`log_analyzer`、`hash_checker`、`file_integrity`、`string_analyzer`、`entropy_analyzer`。 **API** — 位于 `/api/*` 下的 JSON 端点(参见 `docs/API_STABILITY.md`)。 ## 项目结构 ``` edy-shield/ ├── app/ │ ├── cli/ # Command-line interface (edyshield) │ ├── core/ # Algorithms, crypto, filesystem, validators, config │ ├── plugins/ # Plugin contracts, registry and manager │ ├── services/ # Alerts, analysis, history, reports, storage │ └── ui/ # HTTP server + static dashboard ├── docs/ # Architecture, ADRs, threat model, screenshots ├── tests/ # Unit, integration and e2e tests ├── website/ # Marketing landing page ├── brand/ # Logos and visual assets ├── pyproject.toml # Project metadata and tooling config └── CHANGELOG.md ``` ## 安装说明 ### 环境要求 - Python 3.12+ ### Windows ``` git clone https://github.com/EDY075/edy-shield.git cd edy-shield python -m venv .venv .venv\Scripts\activate pip install -e . ``` ### Linux ``` git clone https://github.com/EDY075/edy-shield.git cd edy-shield python3 -m venv .venv source .venv/bin/activate pip install -e . ``` ### macOS ``` git clone https://github.com/EDY075/edy-shield.git cd edy-shield python3 -m venv .venv source .venv/bin/activate pip install -e . ``` ## 运行说明 启动 Web 仪表板: ``` python -m app.ui.server ``` 然后打开 。 REST API 可在相同主机上使用:。 CLI 使用方法: ``` edyshield hash --help edyshield fim baseline --help edyshield fim scan --help ``` ## 配置说明 配置由环境变量驱动(前缀 `EDY_`): | 变量 | 描述 | 默认值 | |---|---|---| | `EDYSHIELD_DB_PATH` | SQLite 数据库文件路径 | `~/.edyshield/edy_shield.db` | | `EDYSHIELD_LOG_LEVEL` | 日志详细程度 | `INFO` | **SQLite** — 所有持久化数据(告警、历史记录、分析、FIM 基线)都位于单个 SQLite 数据库中。 **插件** — 通过插件注册表启用;每个分析器都实现了插件契约(`app/plugins/contracts.py`)。 **目录** — 静态资源、品牌资源和文档分别组织在 `app/ui/static/`、`brand/` 和 `docs/` 下。 ## 测试 ``` pip install -r requirements-dev.txt pytest # run full suite pytest tests/unit -q # unit tests only ruff check app/ # lint ruff format --check app/ # formatting mypy app/ # type checking (strict) coverage run -m pytest # coverage coverage report # coverage report ``` 当前的检测关口:**635 个测试通过**,**91.92% 代码覆盖率**,**mypy strict 检查通过**,**ruff 检查通过**。 ## 安全 - **告警引擎** — 具有严重性映射和去重功能的可配置规则。 - **规则** — 规则条件、运算符和严重性阈值。 - **IOC 处理** — 在调查工作区中显示的指标。 - **日志** — 结构化日志分析和熵检测。 - **分析** — 用于检测可疑内容的字符串和熵分析器。 - **导出** — 以 Markdown 或 JSON 格式导出调查报告。 HTTP 加固包括 Content-Security-Policy、X-Frame-Options、nosniff、Referrer-Policy 和 Permissions-Policy 头信息,以及 1 MB 的请求体大小限制。详情请参见 `docs/THREAT_MODEL.md`。 ## 路线图 - v2.3 — 额外的分析器插件、规则构建器 UI - v2.4 — 原生通知和计划扫描 - v2.5 — 多用户角色和审计追踪 ## 许可证 基于 MIT 许可证发布。详情请参阅 [LICENSE](LICENSE)。
标签:BurpSuite集成, DNS 反向解析, Python, x64dbg, 告警引擎, 子域名变形, 无后门