
Auditor de segurança de rede e domínio que escaneia o Active Directory do Windows, sistemas Linux e infraestrutura de rede, com guias de hardening com tecnologia de IA e relatórios profissionais.
Auditor ético de segurança de rede — mais de 50 verificações em SMB, RDP, LDAP, SSH, Kerberos e muito mais, com análise de CVE com IA e mapeamento de conformidade OWASP/CIS/NIST.
Início Rápido · Documentação · Docker · Recursos de IA · Deixe uma Estrela no GitHub
Relatório HTML com tema Minotauro — selos de severidade, evidências expansíveis, correção com IA |
Relatório JSON — mapeamento OWASP/CIS/NIST/PCI, dados CVE, legível por máquina |
O Asterion é um auditor de segurança de rede e domínio pronto para produção que coloca a ética em primeiro lugar. Projetado para testadores de penetração, pesquisadores de segurança e equipes de segurança empresarial, ele combina verificação de vulnerabilidades tradicional com análise de IA de ponta para entregar insights acionáveis para Windows Active Directory, sistemas Linux e infraestrutura de rede.
ast scan --target 10.0.0.0/24 --output html
- **Detecção Multi-Método**: Análise de protocolos SMB, RDP, LDAP, Kerberos, SSH, FTP, DNS, SNMP
- **Multi-Threading**: Varredura concorrente com 1-20 threads de trabalho
- **Limitação Inteligente de Taxa**: Limitação de requisições configurável (1-20 req/s) para evitar detecção
- **Coleta de Evidências**: Compartilhamentos SMB, consultas LDAP, saída do PowerShell preservados
### 🤖 Análise com IA
Escolha seu provedor de IA com base nas suas necessidades:
| Provedor | Melhor Para | Velocidade | Custo | Privacidade |
| -------------------- | ------------------ | --------------- | ------------- | --------------- |
| **OpenAI GPT-4** | Qualidade de produção | ⚡ Rápido (40s) | 💰 $0.30/varredura | 🔒 Padrão |
| **Anthropic Claude** | Foco em privacidade | ⚡ Rápido (50s) | 💰 $0.35/varredura | 🔒 Reforçada |
| **Ollama (Local)** | Privacidade completa | 🐢 Lento (30min) | 💰 Grátis | 🔐 100% offline |
**Dois Modos de Análise:**
- **Técnico**: Remediação passo a passo com comandos PowerShell/GPO e trechos de configuração
- **Executivo**: Resumos em linguagem simples para partes interessadas e gestão
### 📊 Relatórios Profissionais
**Relatórios JSON** (Legível por máquina)```json
{
"tool": "asterion",
"version": "0.2.0",
"target": "192.168.1.10",
"riskScore": 10.0,
"summary": {
"critical": 3,
"high": 8,
"medium": 16,
"low": 5,
"info": 2
},
"findings": [
{
"id": "AST-SMB-003",
"title": "SMBv1 protocol enabled (EternalBlue vector)",
"severity": "high",
"owasp": { "id": "A06", "name": "Vulnerable and Outdated Components" },
"vulnerabilities": [
{
"cve_id": "CVE-2017-0143",
"cvss_score": 9.8,
"cwe_id": "CWE-119"
}
],
"cvss": 9.8
}
],
"attackChains": [...],
"diff": { "refScanId": 41, "new": [...], "fixed": [...], "persisting": [...] }
}
Relatórios HTML (Amigáveis para Humanos)
A Asterion impõe hacking ético por meio de tecnologia. A varredura agressiva e a análise de IA exigem prova de propriedade:```bash
ast consent generate --domain corp.local
ast consent verify --method http --domain corp.local --token verify-abc123
ast scan --target corp.local --mode aggressive --use-ai
### 💾 Persistência de Banco de Dados
O banco de dados SQLite compartilhado com o Argos Suite rastreia tudo:
- **Histórico de Escaneamentos**: Data, duração, contagem de descobertas, detalhamento por severidade
- **Repositório de Descobertas**: Banco de dados de vulnerabilidades pesquisável em todas as ferramentas Argos
- **Domínios Verificados**: Rastreamento de token de consentimento com expiração
- **Análise de Tendências**: Compare escaneamentos ao longo do tempo```bash
# Query recent scans (works for all Argos Suite tools)
sqlite3 ~/.argos/argos.db "SELECT * FROM scans WHERE tool='asterion' ORDER BY started_at DESC LIMIT 10"
# Find critical issues
sqlite3 ~/.argos/argos.db "SELECT * FROM v_critical_findings WHERE tool='asterion'"
Todas as Plataformas:
Opcional:
git clone https://github.com/rodhnin/asterion-network-minotaur.git cd asterion-network-minotaur
chmod +x scripts/setup.py python3 scripts/setup.py
**O script irá:**
1. ✅ Verificar pré-requisitos (.NET, Python)
2. ✅ Instalar dependências do Python
3. ✅ Configurar o banco de dados compartilhado do Argos Suite
4. ✅ Compilar o Asterion em modo Release
5. ✅ Criar diretórios (~/.asterion, ~/.argos)
6. ✅ Criar script de wrapper `/usr/local/bin/ast` (opcional)
#### Windows (PowerShell)```powershell
# Clone repository
git clone https://github.com/rodhnin/asterion-network-minotaur.git
cd asterion-network-minotaur
# Run setup (right-click PowerShell > Run as Administrator)
.\scripts\setup.ps1
O script irá:
Se os scripts automatizados não funcionarem no seu sistema, siga estes passos:
git clone https://github.com/rodhnin/asterion-network-minotaur.git cd asterion-network-minotaur
#### Passo 2: Instalar dependências
**Linux/macOS:**```bash
pip3 install -r scripts/requirements.txt
Windows (Prompt de Comando):```cmd pip install -r scripts\requirements.txt
#### Passo 3: Configurar o banco de dados
**Linux/macOS:**```bash
python3 scripts/db_migrate.py
Windows:```cmd python scripts\db_migrate.py
#### Passo 4: Compilar o Asterion
**Todas as plataformas:**```bash
dotnet build -c Release
Linux/macOS:```bash mkdir -p ~/.asterion/reports mkdir -p ~/.asterion/consent-proofs mkdir -p ~/.argos
**Windows (PowerShell):**```powershell
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.asterion\reports" | Out-Null
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.asterion\consent-proofs" | Out-Null
New-Item -ItemType Directory -Force -Path "$env:USERPROFILE\.argos" | Out-Null
sudo nano /usr/local/bin/ast
#!/bin/bash exec dotnet "$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)/src/Asterion/bin/Release/net8.0/Asterion.dll" "$@"
sudo chmod +x /usr/local/bin/ast
#### Passo 7: Configurar a chave da API (opcional)
Uma única variável de ambiente funciona para todos os provedores de IA (OpenAI, Anthropic):
**Linux/macOS:**```bash
export AI_API_KEY="sk-proj-..." # OpenAI key
# or
export AI_API_KEY="sk-ant-..." # Anthropic key
# Add to ~/.bashrc or ~/.zshrc to make permanent
Windows (PowerShell):```powershell $env:AI_API_KEY = "sk-proj-..."
[Environment]::SetEnvironmentVariable("AI_API_KEY", "sk-proj-...", [System.EnvironmentVariableTarget]::User)
#### Passo 8: Verificar a instalação
**Linux/macOS (se o symlink foi criado):**```bash
ast version
Windows ou invocação direta:```cmd .\src\Asterion\bin\Release\net8.0\ast.exe version
dotnet .\src\Asterion\bin\Release\net8.0\Asterion.dll version
### Your First Scan
#### Varredura Automática da Rede Local
**A Asterion pode descobrir e varrer automaticamente a sua rede local!**
**Windows (PowerShell) — Após a Configuração (Recomendado):**```powershell
# Test on localhost (simple)
ast scan --target localhost --output html
# Scan local subnet with AI analysis
ast scan --target 192.168.1.0/24 --output both --threads 10 --rate 5 --use-ai --ai-tone both
# Domain scan with authentication
ast scan --target corp.local --auth "CORP\admin:Password123" --use-ai
Windows (PowerShell) — Sem Configuração de PATH:```powershell
.\src\Asterion\bin\Release\net8.0\ast.exe scan --target localhost
--output html --use-ai
--ai-tone both
.\src\Asterion\bin\Release\net8.0\ast.exe scan --target 192.168.1.0/24
--output both --threads 10
--rate 5
**Linux/macOS:**```bash
# Scan localhost
ast scan --target localhost \
--output html \
--use-ai \
--ai-tone both
# Scan local subnet (e.g., 192.168.1.0/24)
ast scan --target 192.168.1.0/24 \
--output both \
--threads 10 \
--rate 5
# Scan domain
ast scan --target corp.local \
--auth "CORP\admin:Password123" \
--output html \
--use-ai
Asterion suporta três formatos de saída usando --output:
Controle como a análise de IA é formatada usando --ai-tone:
| Tom | Caso de Uso | Saída |
|---|---|---|
| technical |
Varredura de rede simples (sem autenticação):```bash ast scan --target 10.0.0.0/24
**Com relatório HTML:**```bash
ast scan --target 192.168.1.0/24 --output html
Varredura autenticada (domínio Windows):```bash
ast scan --target dc01.corp.local
--auth "CORP\Administrator:P@ssw0rd"
--output html
**Com análise de IA (técnica + executiva):**```bash
ast scan --target 10.0.0.0/24 \
--use-ai \
--ai-tone both \
--output html
Varredura rápida (10 threads, 10 req/s):```bash
ast scan --target 10.0.0.0/24
--threads 10
--rate 10
--output json
#### Locais de Relatórios
**Instalação Nativa:**
- Relatórios: `~/.asterion/reports/`
- Banco de dados: `~/.argos/argos.db`
**Windows:**
- Relatórios: `%USERPROFILE%\.asterion\reports\`
- Banco de dados: `%USERPROFILE%\.argos\argos.db`
**Implantação com Docker:**
- Relatórios: `docker/reports/`
- Banco de dados: `docker/data/argos.db`
**🎉 Sucesso!** Verifique o diretório de relatórios para os arquivos de saída JSON e HTML.
---
### Executando com Docker
**Implantação Automática:**```bash
cd docker
./deploy.sh # Linux/macOS
.\deploy.ps1 # Windows
Implantação Manual com Docker:```bash
docker compose up -d
docker compose exec asterion dotnet /app/ast.dll scan
--target 192.168.1.0/24
--output html
docker compose logs -f asterion
docker compose down
---
## 📘 Guia de Uso
### Estrutura de Comandos```bash
ast <command> [options]
Comandos Disponíveis:
scan — Executar uma varredura de segurançaconsent — Gerenciar tokens de consentimentoversion — Exibir informações de versãoast scan --target 192.168.1.0/24
ast scan --target 192.168.1.0/24 --output html
ast scan --target 10.0.0.5 --output both
#### Direcionamento de Rede```bash
# CIDR notation
ast scan --target 10.0.0.0/24
# IP range
ast scan --target 192.168.1.10-50
# Domain name
ast scan --target corp.local
# Single host
ast scan --target 192.168.1.1
ast scan --target 10.0.0.0/24 --threads 3 --rate 2
ast scan --target 10.0.0.0/24 --threads 15 --rate 15
ast scan --target 10.0.0.0/24 --ports 445,3389,22,139
#### Varredura de Domínio do Windows```bash
# Network + LDAP/Kerberos/AD checks
ast scan --target dc01.corp.local \
--auth "CORP\Administrator:P@ssw0rd"
# WinRM: remote firewall, registry, services, privesc
ast scan --target 192.168.1.10 \
--winrm "CORP\admin:P@ssw0rd"
# Full Windows audit: auth + WinRM + AI + HTML
ast scan --target 192.168.1.10 \
--auth "CORP\admin:P@ssw0rd" \
--winrm "CORP\admin:P@ssw0rd" \
--use-ai --ai-tone technical -o both -v
# With NTLM hash (Pass-the-Hash)
ast scan --target 10.0.0.5 \
--auth-ntlm "admin:aad3b435b51404eeaad3b435b51404ee:8846f7eaee8fb117ad06bdd830b7586c"
# Diff against last scan (track security changes)
ast scan --target 192.168.1.10 --winrm "CORP\admin:P@ssw0rd" --diff last -o both
ast scan --target 10.0.0.25 --ssh "admin:password"
ast scan --target 10.0.0.25 --ssh "admin:password" --sudo-password "sudopass"
ast scan --target 10.0.0.25 --ssh-key "admin:~/.ssh/id_rsa"
ast scan --target internal.corp.local
--bastion "bastion.corp.local:jumpuser:~/.ssh/bastion_key"
--ssh "admin:password"
ast scan --target 10.0.0.25
--ssh "root:toor"
--use-ai --ai-tone technical -o both -v
#### Análise com IA```bash
# Technical remediation (default, for security teams)
ast scan --target 10.0.0.5 \
--ssh "root:pass" \
--use-ai --ai-tone technical -o html
# Executive summary (for management)
ast scan --target 10.0.0.5 \
--use-ai --ai-tone non_technical -o html
# Both formats + streaming output
ast scan --target 10.0.0.5 --use-ai --ai-tone both --ai-stream -o both
# Agent mode (NVD CVE lookup tool enabled)
ast scan --target 10.0.0.5 --ssh "root:pass" --use-ai --ai-agent -v
# Compare two models
ast scan --target 10.0.0.5 --use-ai \
--ai-compare "openai/gpt-4o-mini-2024-07-18,anthropic/claude-3-5-haiku-20241022"
# Enforce cost budget
ast scan --target 10.0.0.5 --winrm "admin:pass" --use-ai --ai-budget 0.05
ast scan --target 10.0.0.5 -v
ast scan --target 10.0.0.5 -v --timeout 20
ast scan --target 10.0.0.5 --timeout 5
### Gerenciamento de Token de Consentimento
#### Gerar Token de Consentimento```bash
ast consent generate --domain corp.local
# Output: Token: verify-a3f9b2c1d8e4f5a6
Método HTTP (coloque o arquivo no servidor web):```bash
ast consent verify
--method http
--domain corp.local
--token verify-a3f9b2c1d8e4f5a6
**Método DNS** (adicione registro TXT):```bash
# 1. Add DNS TXT record: corp.local = "asterion-verify=verify-a3f9b2c1d8e4f5a6"
# 2. Verify:
ast consent verify \
--method dns \
--domain corp.local \
--token verify-a3f9b2c1d8e4f5a6
Método SSH (criar arquivo no sistema):```bash
ast consent verify
--method ssh
--domain corp.local
--token verify-a3f9b2c1d8e4f5a6
--ssh "user:password"
#### Executar Modo Agressivo```bash
# After verifying consent token:
ast scan --target corp.local --mode aggressive
ast scan --target 192.168.1.0/24 --output html --threads 10 --rate 10
#### Cenário 2: Auditoria Completa de Domínio```bash
# Complete Windows AD assessment with AI analysis
ast scan --target corp.local \
--auth "CORP\admin:P@ssw0rd" \
--use-ai \
--ai-tone both \
--output both \
--threads 8 \
--rate 8
ast scan --target 10.0.0.0/24
--threads 2
--rate 1
--timeout 20
--output json
#### Cenário 4: Teste de Penetração```bash
# Generate consent first
ast consent generate --domain internal.corp
# Place token and verify
ast consent verify --method http --domain internal.corp --token <token>
# Run aggressive assessment
ast scan --target internal.corp \
--mode aggressive \
--auth "CORP\pentest:P@ssw0rd" \
--use-ai \
--output both
O Asterion usa LangChain 1.0.0 com suporte a vários provedores de IA por meio de ponte Python, dando a você flexibilidade com base em seus requisitos de segurança, privacidade e orçamento.
Melhor para: Uso em produção
#### Anthropic Claude
**Melhor para: Privacidade aprimorada**
- ⭐ Qualidade: Excelente (5/5)
- ⚡ Velocidade: ~50–70 segundos
- 💰 Custo: ~$0.007–0.015 por varredura (claude-3-5-haiku)
- 🔒 Privacidade: Aprimorada (abordagem de privacidade em primeiro lugar da Anthropic)```bash
export AI_API_KEY="sk-ant-..." # Same variable, Anthropic key format
Melhor para: Privacidade completa
ollama pull llama3.2
### Privacidade e Segurança
**Sanitização Automática**
Antes de enviar dados aos provedores de IA, o Asterion remove automaticamente:
- ✅ Tokens de consentimento
- ✅ Credenciais de domínio (senhas, hashes NTLM)
- ✅ Informações Pessoalmente Identificáveis (PII)
- ✅ Endereços IP internos (quando solicitado)
- ✅ Caminhos de compartilhamento SMB com dados sensíveis
**Somente Opt-In**
- A análise por IA exige a flag explícita `--use-ai`
- A varredura agressiva requer um token de consentimento verificado
- Você controla qual provedor vê seus dados
**Para Máxima Privacidade**
Use o Ollama localmente. Embora seja mais lento e menos preciso, os dados da sua varredura nunca saem da sua máquina.
### Mudando de Provedor
**Método Atual (v0.2.0):** Edite `config/defaults.yaml````yaml
ai:
langchain:
provider: "ollama" # Changed from "openai"
model: "llama3.2" # Ollama model
ollama_base_url: "http://localhost:11434"
Chegando na v0.3.0: Menu de configuração interativa (estilo Metasploit)```bash
ast --show-options ast --set ai.provider=anthropic ast --save-profile privacy-mode
---
## 🧪 Laboratório de Testes Seguro
**⚠️ NUNCA verifique redes de produção sem permissão por escrito!**
Use nosso laboratório Docker para praticar com segurança:
### Configurar Ambiente de Teste```bash
# Navigate to docker directory
cd docker
# Deploy vulnerable network lab
docker-compose -f compose.testing.yml up -d
# Wait for services to start (~60 seconds)
docker-compose -f compose.testing.yml logs -f
# Create vulnerable conditions
docker-compose -f compose.testing.yml exec windows-target powershell -c "Disable-NetFirewallProfile -All"
cd ..
ast scan --target 172.20.0.0/24 --output html
ast scan --target 172.20.0.2 --auth "LAB\admin:P@ssw0rd123" --output both
ast scan --target 172.20.0.0/24 --use-ai --output html
### Limpeza```bash
cd docker
docker-compose -f compose.testing.yml down -v # -v removes all data
Para cenários de teste detalhados, consulte docs/TESTING_GUIDE.md
Analise apenas redes e sistemas que você possui ou possui autorização explícita por escrito para testar.
Asterion implementa controlos técnicos para prevenir o uso indevido:
O acesso não autorizado a sistemas informáticos é ilegal na maioria das jurisdições:
Para diretrizes éticas completas, consulte docs/ETHICS.md
Asterion fornece scripts de deploy multiplataforma:
Linux/macOS:```bash cd docker ./deploy.sh
**Windows (PowerShell):**```powershell
cd docker
.\deploy.ps1
Opções de Implantação:
Linux/macOS:```bash cd docker docker compose up -d
docker compose exec asterion dotnet /app/ast.dll scan --target 10.0.0.0/24
docker compose logs -f asterion
docker compose down
**Windows (PowerShell):**```powershell
cd docker
docker compose up -d
# Execute scans (note the dotnet wrapper)
docker compose exec asterion dotnet /app/ast.dll scan --target 10.0.0.0/24
# View logs
docker compose logs -f asterion
# Stop service
docker compose down
Persistent data:
./reports/ → host directory docker/reports/./data/argos.db → host directory docker/data/argos.db (shared Argos Suite DB)./logs/asterion.log → host directory docker/logs/asterion.logNota: O Asterion detecta automaticamente o ambiente Docker por meio da variável de ambiente ASTERION_IN_DOCKER.
Para documentação completa do Docker (Linux/Windows), consulte: docker/README.md
Instalação Nativa:``` ~/.asterion/ ├── reports/ │ ├── asterion_report_10_0_0_0_24_20260419_143000.json # Machine-readable │ └── asterion_report_10_0_0_0_24_20260419_143000.html # Human-friendly (Minotaur-themed) └── consent-proofs/ └── corp_local_verify-abc123_20260419.txt
~/.argos/ ├── argos.db # Shared Argos Suite database └── logs/ └── argos.log # Shared log file
**Implantação Docker:**```
asterion-network-minotaur/
├── docker/
│ ├── reports/
│ │ ├── asterion_report_10_0_0_0_24_20260419_143000.json
│ │ └── asterion_report_10_0_0_0_24_20260419_143000.html
│ ├── data/
│ │ └── argos.db # Shared Argos Suite database (Docker)
│ ├── logs/
│ │ └── asterion.log
│ └── workspace/
│ └── consent-proofs/
Nota: O ambiente Docker é detectado automaticamente por meio da variável de ambiente ASTERION_IN_DOCKER.
{ "tool": "asterion", "version": "0.2.0", "target": "10.0.0.0/24", "date": "2026-04-13T14:30:00Z", "mode": "safe", "summary": { "critical": 12, "high": 8, "medium": 15, "low": 5, "info": 20 }, "findings": [ { "id": "AST-SMB-003", "title": "SMBv1 enabled (EternalBlue vulnerability)", "severity": "critical", "confidence": "high", "description": "SMBv1 is enabled on this system. This protocol is vulnerable to EternalBlue (CVE-2017-0143), a critical remote code execution vulnerability exploited by WannaCry ransomware.", "evidence": { "type": "smb", "value": "SMBv1 negotiated successfully", "context": "Port 445/tcp open, SMB signing not required" }, "recommendation": "URGENT - Disable SMBv1 immediately:\n\nPowerShell:\nDisable-WindowsOptionalFeature -Online -FeatureName SMB1Protocol -NoRestart\n\nGroup Policy:\nComputer Configuration → Administrative Templates → MS Security Guide\n→ Configure SMBv1 client driver startup = Disabled\n→ Configure SMBv1 server = Disabled\n\nVerify:\nGet-SmbServerConfiguration | Select EnableSMB1Protocol", "references": [ "https://docs.microsoft.com/en-us/windows-server/storage/file-server/troubleshoot/detect-enable-and-disable-smbv1-v2-v3", "https://nvd.nist.gov/vuln/detail/CVE-2017-0143" ], "affected_component": "SMB Server" }, { "id": "AST-LDAP-001", "title": "LDAP anonymous bind allowed", "severity": "high", "confidence": "high", "description": "LDAP server allows anonymous bind, permitting unauthenticated enumeration of domain users, groups, and configuration.", "evidence": { "type": "ldap", "value": "Anonymous bind successful to port 389/tcp", "context": "Retrieved domain base DN: DC=corp,DC=local" }, "recommendation": "Disable LDAP anonymous bind:\n\nGroup Policy:\nComputer Configuration → Policies → Windows Settings → Security Settings → Local Policies → Security Options\n→ Network access: Allow anonymous SID/Name translation = Disabled\n→ Network access: Do not allow anonymous enumeration of SAM accounts = Enabled\n→ Network access: Do not allow anonymous enumeration of SAM accounts and shares = Enabled\n\nRegistry:\nreg add "HKLM\SYSTEM\CurrentControlSet\Control\Lsa" /v RestrictAnonymous /t REG_DWORD /d 1 /f", "affected_component": "LDAP Server" }, { "id": "AST-RDP-001", "title": "RDP without Network Level Authentication (NLA)", "severity": "high", "confidence": "high", "description": "Remote Desktop Protocol (RDP) is configured without Network Level Authentication (NLA). This allows unauthenticated attackers to reach the login screen and attempt brute-force attacks.", "evidence": { "type": "rdp", "value": "RDP port 3389/tcp open, NLA not required", "context": "Encryption level: High" }, "recommendation": "Enable Network Level Authentication:\n\nPowerShell:\n(Get-WmiObject -class Win32_TSGeneralSetting -Namespace root\cimv2\terminalservices -Filter "TerminalName='RDP-tcp'").SetUserAuthenticationRequired(1)\n\nGroup Policy:\nComputer Configuration → Administrative Templates → Windows Components → Remote Desktop Services → Remote Desktop Session Host → Security\n→ Require user authentication for remote connections by using Network Level Authentication = Enabled", "affected_component": "RDP Server" } ], "notes": { "scan_duration_seconds": 67.5, "targets_scanned": 12, "rate_limit_applied": true, "scope_limitations": "Scan limited to network services. Local system checks require SSH/WinRM credentials.", "false_positive_disclaimer": "Manual verification recommended for all findings before remediation." }, "aiAnalysis": { "executiveSummary": "The network scan identified 12 critical security vulnerabilities requiring immediate attention...", "technicalRemediation": "### Critical Issues\n\n1. \n - Affected systems: 10.0.0.5, 10.0.0.10\n - Remediation: Disable SMBv1...", "generatedAt": "2026-04-19T14:35:00Z", "modelUsed": "gpt-4o-mini-2024-07-18", "provider": "openai" } }
### Recursos do Relatório HTML
- **📊 Painel Executivo**: Cartões de resumo com contagens de severidade e identidade visual Minotaur
- **🤖 Análise de IA**: Seções expansíveis para insights executivos e técnicos
- **🔍 Descobertas Detalhadas**: Organizadas por severidade com comandos de remediação PowerShell/GPO
- **📋 Evidências**: Compartilhamentos SMB, consultas LDAP, configurações RDP, saída do PowerShell
- **🔗 Referências Externas**: Links para CVE, documentação da Microsoft, guias OWASP
- **📱 Responsivo para Dispositivos Móveis**: Funciona em todos os dispositivos
- **🎨 Tema Minotaur**: Esquema de cores vermelho/laranja/roxo
---
## 📁 Estrutura do Projeto```
asterion-network-minotaur/
│
├── src/
│ ├── Asterion/ # Main C# application
│ │ ├── Asterion.csproj # .NET project file
│ │ │
│ │ ├── Checks/ # Security check modules
│ │ │ ├── ICheck.cs # Check interface
│ │ │ ├── BaseCheck.cs # Abstract base class (350 lines)
│ │ │ ├── CheckCategory.cs # Check category enum
│ │ │ │
│ │ │ ├── CrossPlatform/ # Network service scanners (work from any OS)
│ │ │ │ ├── PortScanner.cs # TCP port scanning
│ │ │ │ ├── SmbScanner.cs # SMB/CIFS security (42KB)
│ │ │ │ ├── RdpScanner.cs # RDP configuration (24KB)
│ │ │ │ ├── LdapScanner.cs # LDAP/AD security (38KB)
│ │ │ │ ├── KerberosScanner.cs # Kerberos security (22KB)
│ │ │ │ ├── SnmpScanner.cs # SNMP vulnerabilities (21KB)
│ │ │ │ ├── DnsScanner.cs # DNS misconfigurations (14KB)
│ │ │ │ ├── FtpScanner.cs # FTP security (27KB)
│ │ │ │ ├── TlsScanner.cs # TLS/SSL certificate checks
│ │ │ │ ├── SysvolCheck.cs # SYSVOL/GPP password exposure
│ │ │ │ ├── AdAggressiveCheck.cs # AS-REP roasting, delegation, weak ACLs
│ │ │ │ └── WinRmChecks.cs # Remote Windows audit via WS-Man
│ │ │ │
│ │ │ ├── Windows/ # Local Windows system checks
│ │ │ │ ├── WinFirewallCheck.cs # Firewall configuration
│ │ │ │ ├── WinRegistryCheck.cs # Registry security
│ │ │ │ ├── AdPolicyCheck.cs # Active Directory policies
│ │ │ │ ├── WinServicesCheck.cs # Service misconfigurations
│ │ │ │ └── PrivEscCheckWin.cs # Windows privilege escalation
│ │ │ │
│ │ │ └── Linux/ # Local/remote Linux checks (via SSH)
│ │ │ ├── LinuxFirewallCheck.cs # iptables/nftables/ufw
│ │ │ ├── SshConfigCheck.cs # SSH hardening
│ │ │ ├── SambaNfsCheck.cs # Samba/NFS security
│ │ │ └── PrivEscCheckLinux.cs # SUID, sudo misconfig
│ │ │
│ │ ├── Core/ # Core infrastructure
│ │ │ ├── Orchestrator.cs # Main execution engine (1,243 lines)
│ │ │ ├── Config.cs # YAML configuration loader
│ │ │ ├── ScanOptions.cs # Scan configuration
│ │ │ ├── Database.cs # SQLite operations
│ │ │ ├── ConsentValidator.cs # Consent token verification
│ │ │ ├── SshConnectionManager.cs # SSH.NET wrapper (password/key/bastion)
│ │ │ ├── WinRmConnectionManager.cs # WS-Man HTTP/NTLM (Linux → Windows)
│ │ │ ├── AttackChainAnalyzer.cs # Multi-step attack chain correlation
│ │ │ ├── NtlmSpnego.cs # NTLM/SPNEGO auth implementation
│ │ │ ├── NtlmV2Auth.cs # NTLMv2 auth implementation
│ │ │ │
│ │ │ ├── Output/
│ │ │ │ └── ReportBuilder.cs # Report generation (risk score, labels)
│ │ │ │
│ │ │ └── Utils/
│ │ │ ├── NetworkUtils.cs # Network operations
│ │ │ ├── CidrParser.cs # CIDR/IP range parsing
│ │ │ ├── AuthenticationManager.cs # Credential handling
│ │ │ └── OsDetector.cs # Per-target OS detection (SSH/SMB/TTL)
│ │ │
│ │ ├── Models/ # Data models
│ │ │ ├── Report.cs # Main report structure
│ │ │ ├── Finding.cs # Security finding (OWASP/CVE/Compliance)
│ │ │ ├── Evidence.cs # Finding proof
│ │ │ ├── ConsentInfo.cs # Consent verification
│ │ │ └── AiAnalysis.cs # AI-generated content (cost tracking)
│ │ │
│ │ ├── Program.cs # Application entry point
│ │ └── Cli.cs # CLI argument parser (all flags)
│ │
│ └── Asterion.sln # Visual Studio solution
│
├── scripts/ # Python bridge scripts
│ ├── ai_analyzer.py # LangChain AI integration (stream/agent/compare)
│ ├── cve_lookup.py # NVD API v2 CVE enrichment
│ ├── owasp.py # OWASP Top 10 mapping (139 entries)
│ ├── compliance.py # CIS/NIST/PCI mapping (95 entries)
│ ├── db_migrate.py # Database setup
│ ├── render_html.py # HTML report generation (Jinja2)
│ ├── setup.sh # Linux/macOS installation script
│ ├── setup.ps1 # Windows PowerShell setup
│ └── requirements.txt # Python dependencies
│
├── config/ # Configuration files
│ ├── defaults.yaml # Default settings
│ └── prompts/ # AI prompt templates
│ ├── technical.txt # Technical remediation prompts
│ └── non_technical.txt # Executive summary prompts
│
├── db/
│ └── migrate.sql # Database schema (shared with Argos Suite)
│
├── docker/ # Docker deployment
│ ├── Dockerfile # Production image
│ ├── docker-compose.yml # Production deployment
│ ├── compose.testing.yml # Vulnerable lab environment
│ ├── .dockerignore
│ ├── .env.example
│ └── README.md # Docker instructions
│
├── docs/ # Documentation
│ ├── AI_INTEGRATION.md # AI setup guide
│ ├── CONSENT.md # Consent token system
│ ├── DATABASE_GUIDE.md # SQLite schema and queries
│ ├── ETHICS.md # Ethical guidelines
│ ├── NETWORK_CHECKS.md # Complete check catalog (50+ checks)
│ └── ROADMAP.md # Development roadmap
│
├── schema/
│ └── report.schema.json # Argos Suite unified schema
│
├── templates/
│ └── report.html.j2 # HTML report template (35KB, Minotaur-themed)
│
├── assets/
│ └── ascii.txt # Minotaur ASCII art banner
│
├── CHANGELOG.md # Version history
├── README_PATTERN.md # README visual branding guide
├── LICENSE # MIT License
└── README.md # This file
Estatísticas:
Status: 🎉 Lançado
--winrm)--ssh-key, --bastion, --sudo-password)--diff last / --diff <id> — acompanhe a regressão de segurança--creds-file credentials.yaml--ai-budget, custos salvos no banco de dados + costs.jsonFoco: Usabilidade, escala, IA interativa
--show-options, --set)ast db scans list, ast db findings search)Foco: Remediação automatizada, detecção por ML, varredura distribuída
Para descrições detalhadas dos recursos, consulte docs/ROADMAP.md
Recebemos contribuições! Seja:
git checkout -b feature/amazing-feature)git commit -m 'Add amazing feature')git push origin feature/amazing-feature)git clone https://github.com/YOUR-USERNAME/asterion-network-minotaur.git cd asterion-network-minotaur
pip install -r scripts/requirements.txt dotnet restore
dotnet build
dotnet run --project src/Asterion -- scan --target 192.168.1.1 -v
### Code Style
- **Formatação C#**: Siga as convenções de codificação C# da Microsoft
- **Formatação Python**: Usamos [Black](https://github.com/psf/black) (tamanho de linha: 88)
- **Documentação XML**: Obrigatória para todas as classes/métodos públicos
- **Comentários de Código**: Use `//` para comentários inline, `///` para documentação XML
### Relatando Problemas
Encontrou um bug? Tem uma solicitação de recurso?
**Abra uma issue**: https://github.com/rodhnin/asterion-network-minotaur/issues
Por favor, inclua:
- Versão do Asterion (`ast version`)
- Versão do .NET (`dotnet --version`)
- Versão do Python (`python --version`)
- Sistema operacional
- Passos para reproduzir (para bugs)
- Comportamento esperado versus real
---
## 📚 Documentação
Documentação abrangente disponível no diretório `docs/`:
| Document | Description |
| ------------------------------------------- | ----------------------------------------- |
| [AI_INTEGRATION.md](https://github.com/rodhnin/asterion-network-minotaur/blob/main/docs/AI_INTEGRATION.md) | Guia completo de configuração de IA (todos os 3 provedores) |
| [CONSENT.md](https://github.com/rodhnin/asterion-network-minotaur/blob/main/docs/CONSENT.md) | Detalhes técnicos do sistema de token de consentimento |
| [DATABASE_GUIDE.md](https://github.com/rodhnin/asterion-network-minotaur/blob/main/docs/DATABASE_GUIDE.md) | Esquema SQLite, consultas, gerenciamento |
| [ETHICS.md](https://github.com/rodhnin/asterion-network-minotaur/blob/main/docs/ETHICS.md) | Estrutura legal e diretrizes éticas |
| [NETWORK_CHECKS.md](https://github.com/rodhnin/asterion-network-minotaur/blob/main/docs/NETWORK_CHECKS.md) | Catálogo completo de mais de 50 verificações de segurança |
| [ROADMAP.md](https://github.com/rodhnin/asterion-network-minotaur/blob/main/docs/ROADMAP.md) | Recursos futuros e planos de desenvolvimento |
### Links Rápidos
- **Changelog**: [CHANGELOG.md](https://github.com/rodhnin/asterion-network-minotaur/blob/main/CHANGELOG.md)
- **Licença**: [LICENSE](https://github.com/rodhnin/asterion-network-minotaur/blob/main/LICENSE)
- **Arte ASCII**: [assets/ascii.txt](https://github.com/rodhnin/asterion-network-minotaur/blob/main/assets/ascii.txt)
---
## 🤝 Parte do Argos Suite
O Asterion é o quarto componente do **Argos Security Suite**:
| Tool | Language | Target | Status |
| -------------- | ----------- | ----------------------- | ----------- |
| **Argus** | Python | WordPress | ✅ Estável |
| **Hephaestus** | Python | Servidores (Linux/Windows) | ✅ Estável |
| **Pythia** | Python | Injeção SQL | ✅ Estável |
| **Asterion** | C# + Python | Redes/Domínios/AD | 🎉 Lançado |
**Infraestrutura Compartilhada:**
- Banco de dados SQLite (`~/.argos/argos.db`)
- Esquema unificado de relatórios JSON
- Sistema de token de consentimento
- Análise de IA via LangChain
---
## ⚖️ Licença
Este projeto está licenciado sob a **MIT License** - consulte o arquivo [LICENSE](https://github.com/rodhnin/asterion-network-minotaur/blob/main/LICENSE) para obter detalhes.```
MIT License
Copyright (c) 2025-2026 Rodney Dhavid Jimenez Chacin
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
IMPORTANTE: Esta ferramenta é somente para testes de segurança autorizados.
Ao usar o Asterion, você reconhece e concorda que:
Se você descobrir vulnerabilidades usando o Asterion:
Não escaneie. Se você não tem certeza se tem permissão, provavelmente não tem.
O Asterion se apoia nos ombros de gigantes:
Agradecimentos especiais a todos os pesquisadores de segurança que praticam e promovem o hacking ético.
Rodney Dhavid Jimenez Chacin (rodhnin)
Para dúvidas, feedback ou propostas de colaboração, visite rodhnin.com
Feito com ❤️ para profissionais de segurança e administradores de redes corporativas em todo o mundo
⭐ Dê uma estrela neste repositório se você o achar útil! ⭐
Reportar Bug • Solicitar Recurso • Documentação
🐂 Asterion — Navegando pelo Labirinto de Redes 🐂
Asterion v0.2.0 — Maio de 2026
Feito com ❤️ por rodhnin | Parte da Argos Security Suite
| Categoria de Verificação | Detalhes |
|---|
| Segurança SMB/CIFS | Compartilhamentos anônimos, assinatura SMB, SMBv1 (EternalBlue), NTLMv1, compartilhamentos graváveis |
| Segurança RDP | Autenticação em Nível de Rede (NLA), níveis de criptografia, RDP exposto |
| LDAP/Active Directory | Bind anônimo, assinatura LDAP, políticas de senha, pré-autenticação Kerberos |
| Segurança Kerberos | AS-REP roasting, Kerberoasting, tempo de vida excessivo do ticket |
| SNMP | Strings de comunidade padrão, SNMPv1/v2c, acesso de escrita |
| DNS/NetBIOS | Transferências de zona (AXFR), envenenamento de LLMNR/NetBIOS, mDNS |
| Sistemas Windows | Firewall, Registro (UAC, LSA), serviços, escalonamento de privilégios |
| Sistemas Linux | iptables/nftables, SSH, Samba/NFS, binários SUID, configuração incorreta do sudo |
| Formato | Comando | Saída |
|---|
| JSON | --output json | Relatórios legíveis por máquina (padrão) |
| HTML | --output html | Belos relatórios com tema Minotauro |
| Both | --output both | Gera tanto JSON quanto HTML |
| Equipes de segurança |
| Remediação passo a passo com comandos PowerShell/GPO |
| non_technical | Resumo executivo | Descrições em linguagem simples para a gestão |
| both | Análise completa | Formatos técnicos e executivos |
| Opção | Valores | Padrão | Descrição |
|---|
--target, -t | IP/CIDR/domain | Obrigatório | Alvo(s): 192.168.1.0/24, 10.0.0.1, corp.local, lista separada por vírgulas |
--mode, -m | safe, aggressive | safe | Modo de varredura (agressivo exige token de consentimento) |
--output, -o | json, html, both | json | Formato de saída |
--ports, -p | lista de portas | Detecção automática | Portas a varrer (ex.: 22,80,443 ou 8000-9000) |
--threads | 1-20 | 5 | Número de threads simultâneas |
--rate | 1-20 | 5 | Limite de taxa de requisições (req/s) |
--timeout | segundos | 10 | Tempo limite de conexão |
--verify-ssl | flag | true | Verificar certificados SSL/TLS (desative para certificados autoassinados) |
--verbose, -v | flag | false | Ativar log detalhado |
--diff | last / scan_id | - | Comparar com a varredura anterior (--diff last ou --diff 42) |
--creds-file | caminho para YAML | - | Carregar todas as credenciais do arquivo YAML |
| Opção | Valores | Descrição |
|---|
--auth | DOMAIN\user:pass | Credenciais de domínio para verificações LDAP/Kerberos/SMB/AD |
--auth-ntlm | user:hash | Autenticação NTLM pass-the-hash |
--kerberos | user:pass@REALM | Credenciais Kerberos |
--winrm | DOMAIN\user:pass | Verificações Windows remotas via WinRM (firewall, registro, serviços, AD) |
--ssh | user:pass | Autenticação por senha SSH para verificações Linux remotas |
--ssh-key | user:/path/key | Autenticação baseada em chave SSH |
--sudo-password | pass | Senha de elevação sudo para verificações Linux privilegiadas |
--bastion | host:user:key | Host de salto/bastion para SSH multi-hop |
| Opção | Valores | Padrão | Descrição |
|---|
--use-ai | flag | false | Ativar análise com IA |
--ai-tone | technical, non_technical, both | technical | Formato da análise de IA |
--ai-provider | openai, anthropic, ollama | openai | Provedor de IA |
--ai-model | nome do modelo | gpt-4o-mini-2024-07-18 | Modelo de IA a usar |
--ai-budget | valor em USD | - | Abortar a IA se o custo estimado exceder este valor |
--ai-stream | flag | false | Transmitir tokens de IA para stdout em tempo real |
--ai-agent | flag | false | Modo agente LangChain com ferramenta de consulta de CVE da NVD |
--ai-compare | prov/model,prov/model | - | Comparação entre vários modelos |
| Modo | Verificações | Consentimento Necessário | Limite de Taxa |
|---|
| Safe | Verificações de rede não intrusivas | ❌ Não | 5 req/s |
| Aggressive | Testes aprofundados de AD/sistema | ✅ Sim | 10 req/s |
| AI Analysis | Análise de vulnerabilidades | ✅ Sim | N/A |
--ai-stream--ai-agent--ai-compare