这个项目能做什么

# ASGARD **蓝队安全套件——9个模块,一个原则:未经测试的功能不存在。** Asgard是一套防御性安全(蓝队)工具套件,专为无法承担商业SOC平台、但仍需检测、调查、编排并证明其合规性的中小企业和独立分析师设计。 每个模块只做**一件事**,并做到极致:没有单体架构,不强制依赖云提供商,README中描述的功能在代码中真实存在。整个套件经过了全面的技术审计,修复了实际的安全漏洞,包括两处软件声称成功但实际从未发生的情况。 ## 架构 三个功能组: - **检测**——传感器:Heimdall监控日志,Bifrost监控网络,Yggdrasil监控Active Directory。 - **响应与情报**——告警后的处理:Mjolnir执行主机取证分类,Fenrir利用公开威胁情报进行丰富,Sleipnir通过YAML剧本编排所有操作。 - **治理**——纯技术安全组合中通常缺失的部分:Forseti将安全态势转化为GDPR/NIS2合规评分,Gjallarhorn集中通知。 **Ragnarök**是指挥中心:一个桌面应用(Tauri + FastAPI),内置对话式助手,可对底层模块提出操作建议——但未经明确确认绝不执行。 ## 模块 | 模块 | 功能 | 技术栈 | 测试 | |---|---|---|---| | **Heimdall** | 轻量级HIDS和Windows代理:检测SSH/Windows事件日志中的暴力破解,通过可配置TTL在防火墙层面封禁IP,通过Telegram/Gjallarhorn通知 | Python, PowerShell, FastAPI, SQLite | 38 ✅ | | **Mjolnir** | 受感染主机的自动取证分类:进程/网络快照,VirusTotal哈希验证(带缓存和限速),真实YARA扫描(yara-python),Markdown/HTML报告 | Python, psutil, yara-python | 49 ✅ | | **Bifrost** | 多线程网络扫描器,支持横幅抓取、GeoIP/WHOIS丰富、局域网发现、加密报告(PBKDF2 + Fernet) | Python, FastAPI | 46 ✅ | | **Yggdrasil** | Active Directory(LDAP/LDAPS)和Microsoft 365/Entra ID云安全审计(MFA态势、全局管理员、旧版认证),通过真实Microsoft Graph API(应用专用OAuth2)或JSON导出 | Python, ldap3, msal | 54 ✅ | | **Fenrir** | 公共威胁情报聚合器:CISA KEV始终启用,OTX可选,STIX 2.1导出,带锁保护的SQLite | Python | 48 ✅ | | **Sleipnir** | SOAR引擎:执行编排其他模块的YAML剧本,带持久状态和事件审计追踪 | Python, PyYAML | 32 ✅ | | **Forseti** | 面向中小企业的GDPR/NIS2/DORA/ISO27001合规检查器:41项真实检查(13项GDPR + 12项NIS2 + 8项DORA + 8项ISO27001),评分,带差距和具体修复措施的报告 | Python | 44 ✅ | | **Gjallarhorn** | 集中告警中心(Telegram/webhook/SMTP/Teams/Jira/ServiceNow),带去重和限流,供Heimdall和Sleipnir使用 | Python, FastAPI | 63 ✅ | | **Ragnarök** | 桌面和Web编排器(Tauri + FastAPI),带AI助手(FastEmbed + ChromaDB)、多用户RBAC、安全加固和审计日志 | Tauri, Rust, Python | 264 ✅ | ## 快速开始(Docker——完整套件) 9个模块是git子模块,而非简单文件夹——请使用`--recursive`克隆,否则模块目录将为空,Docker构建和`install.sh`/`install.ps1`都会失败。 ```bash git clone --recursive https://github.com/Fioru12/Asgard.git cd Asgard ./install.sh # Linux / macOS / Git Bash .\install.ps1 # Windows PowerShell ``` 然后打开**http://localhost:8080/dashboard**——首次启动向导将引导您创建管理员账户。 在localhost上暴露的服务: | 服务 | URL | |---------|-----| | Ragnarök(仪表板 + API) | http://localhost:8080 | | Heimdall | http://localhost:18000 | | Gjallarhorn | http://localhost:8090 | | Forseti | http://localhost:8091 | | Bifrost | http://localhost:8092 | ## 快速开始(手动——单个模块) 每个模块都是独立的:克隆、安装、单独使用。 ```bash git clone https://github.com/Fioru12/<模块名>.git cd <模块名> pip install -r requirements.txt pytest -v # 验证一切在您的环境中正常工作 python main.py --help ``` 每个模块都有自己的`README.md`,包含特定的快速开始指南、用于配置的`.env.example`,以及解释其解决的实际问题的“构建原因”部分。 ## 项目原则 - **零理想化功能。** 如果模块的README描述了某项功能,该功能必须有测试证明。如果模块支持演示/模拟模式,会明确声明,绝不冒充真实数据。 - **响亮地失败,而非静默。** 失败的安全操作会明确说明——绝不假装成功。 - **每个暴露的API默认启用身份验证**,若未显式配置则自动生成密钥。 - **每个具有实际后果的操作都保留人工参与**(IP封禁、剧本执行、Ragnarök中AI建议的操作)。 **由[Fioru12](https://github.com/Fioru12)开发**