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)**