Sobre o projeto
# ASGARD
**Blue Team Security Suite — 9 módulos, um único princípio: se não é testado, não existe.**
Asgard é uma suíte de ferramentas de segurança defensiva (blue team) projetada para PMEs e analistas independentes que não podem pagar por uma plataforma SOC comercial, mas ainda precisam detectar, investigar, orquestrar e demonstrar conformidade regulatória.
Cada módulo faz **uma coisa só** e faz bem: sem monolito, sem dependência obrigatória de provedor de nuvem, sem funcionalidade descrita no README que não exista de verdade no código. Toda a suíte passou por uma auditoria técnica completa que corrigiu bugs de segurança reais, incluindo dois casos em que o software declarava um sucesso que na verdade nunca aconteceu.
## Arquitetura
Três grupos funcionais:
- **Detecção** — os sensores: Heimdall observa os logs, Bifrost observa a rede, Yggdrasil observa o Active Directory.
- **Resposta e Inteligência** — o que acontece após um alerta: Mjolnir faz o triage forense do host, Fenrir enriquece com threat intel pública, Sleipnir orquestra tudo via playbooks YAML.
- **Governança** — a parte que geralmente falta em portfólios de segurança puramente técnicos: Forseti traduz a postura de segurança em um score de conformidade GDPR/NIS2, Gjallarhorn centraliza as notificações.
**Ragnarök** é o ponto de comando: um aplicativo desktop (Tauri + FastAPI) com assistente conversacional que propõe ações nos módulos subjacentes — nunca executando-as sem confirmação explícita.
## Os módulos
| Módulo | O que faz | Stack | Testes |
|---|---|---|---|
| **Heimdall** | HIDS leve & Windows Agent: detecta brute-force em logs SSH/Windows EventLog, bloqueia IPs no firewall com TTL configurável, notifica via Telegram/Gjallarhorn | Python, PowerShell, FastAPI, SQLite | 38 ✅ |
| **Mjolnir** | Triage forense automático em host comprometido: snapshot de processos/rede, verificação de hash no VirusTotal (com cache e rate-limiting), varredura YARA real (yara-python), relatório Markdown/HTML | Python, psutil, yara-python | 49 ✅ |
| **Bifrost** | Scanner de rede multi-thread com banner grabbing, enriquecimento GeoIP/WHOIS, descoberta de LAN, relatórios criptografados (PBKDF2 + Fernet) | Python, FastAPI | 46 ✅ |
| **Yggdrasil** | Auditoria de segurança do Active Directory (LDAP/LDAPS) e Cloud Microsoft 365 / Entra ID (postura MFA, Global Admins, Legacy Auth) via Microsoft Graph API real (OAuth2 app-only) ou exportação JSON | Python, ldap3, msal | 54 ✅ |
| **Fenrir** | Agregador de inteligência de ameaças pública: CISA KEV sempre ativo, OTX opcional, exportação STIX 2.1, SQLite com proteção de lock | Python | 48 ✅ |
| **Sleipnir** | Motor SOAR: executa playbooks YAML que orquestram os outros módulos, com estado persistente e trilha de auditoria do incidente | Python, PyYAML | 32 ✅ |
| **Forseti** | Verificador de conformidade GDPR/NIS2/DORA/ISO27001 para PMEs: 41 controles reais (13 GDPR + 12 NIS2 + 8 DORA + 8 ISO27001), scoring, relatório com lacunas e remediação concreta | Python | 44 ✅ |
| **Gjallarhorn** | Hub de alertas centralizado (Telegram/webhook/SMTP/Teams/Jira/ServiceNow) com dedup e throttling, usado por Heimdall e Sleipnir | Python, FastAPI | 63 ✅ |
| **Ragnarök** | Orquestrador desktop & web (Tauri + FastAPI) com assistente de IA (FastEmbed + ChromaDB), RBAC multi-usuário, hardening de segurança e log de auditoria | Tauri, Rust, Python | 264 ✅ |
## Quick Start (Docker — Suíte Completa)
Os 9 módulos são git submodules, não simples pastas — clone com `--recursive`, caso contrário os diretórios dos módulos ficarão vazios e tanto o build Docker quanto `install.sh`/`install.ps1` falharão.
```bash
git clone --recursive https://github.com/Fioru12/Asgard.git
cd Asgard
./install.sh # Linux / macOS / Git Bash
.\install.ps1 # Windows PowerShell
```
Depois abra **http://localhost:8080/dashboard** — o assistente de primeira execução guiará você na criação da conta admin.
Serviços expostos em localhost:
| Serviço | URL |
|---------|-----|
| Ragnarök (dashboard + API) | http://localhost:8080 |
| Heimdall | http://localhost:18000 |
| Gjallarhorn | http://localhost:8090 |
| Forseti | http://localhost:8091 |
| Bifrost | http://localhost:8092 |
## Quick Start (Manual — Módulo Único)
Cada módulo é independente: clone, instale, use sozinho.
```bash
git clone https://github.com/Fioru12/<Modulo>.git
cd <Modulo>
pip install -r requirements.txt
pytest -v # verifica que tudo funciona no seu ambiente
python main.py --help
```
Cada módulo tem seu próprio `README.md` com Quick Start específico, `.env.example` para configuração, e uma seção "Por que eu construí isso" que explica o problema real que resolve.
## Princípios do projeto
- **Zero funcionalidade aspiracional.** Se o README de um módulo descreve algo, esse algo tem um teste que o comprova. Onde um módulo suporta um modo demonstrativo/simulado, isso é declarado explicitamente, nunca vendido como dado real.
- **Falhar ruidosamente, não silenciosamente.** Uma ação de segurança que falha diz isso claramente — não finge um sucesso que não existe.
- **Autenticação por padrão em cada API exposta**, chave gerada automaticamente se não configurada explicitamente.
- **Um humano permanece no loop** para cada ação com consequências reais (bloqueio de IP, execução de playbook, ação proposta pela IA no Ragnarök).
**Desenvolvido por [Fioru12](https://github.com/Fioru12)**
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.