chore: padroniza arquitetura Ciberfauna, logo na raiz, hooks de verificação e CI multi-arch no runner ARM
CI / Formatação e clippy (push) Successful in 1m9s
CI / Auditoria de dependências (push) Successful in 12s
CI / Testes (Linux) (push) Successful in 1m34s
Release / Cria a release (push) Successful in 5s
CI / Compila o app desktop (Linux) (push) Successful in 1m36s
Release / CLI (linux-aarch64) (push) Successful in 1m23s
Release / CLI (linux-x86_64) (push) Successful in 1m40s
Release / App desktop (linux-aarch64) (push) Successful in 7m32s
Release / App desktop (linux-x86_64) (push) Failing after 9m5s
Release / App desktop (windows) (push) Failing after 6m20s

This commit is contained in:
Lucas Rayan committed 2026-10-30 17:38:58 -03:00
1 parent 30a086a808
commit 659701b2d4
95 files changed
+2826 -253

No files matched your search

+3 -3
View File
@@ -28,13 +28,13 @@ A CLI e o app desktop são clientes finos: ambos chamam o `Engine` do núcleo. A
| `pcapreader.rs`, `pcapwriter.rs` | Leitura e escrita de `.pcap`. |
| `audit.rs` | Trilha de auditoria local encadeada por hash. |
| `doctor.rs` | Diagnóstico de privilégios, ferramentas e interfaces. |
| `update.rs` | Auto-atualização por releases do GitHub (curl + SHA-256). |
| `update.rs` | Auto-atualização por releases do Gitea (curl + SHA-256). |
| `error.rs`, `testutil.rs` | Tipo de erro compartilhado; ajudantes de teste. |
## Plataforma
Captura e modo monitor são **Linux** (`AF_PACKET` + netlink). Parsing (`radiotap`, `dot11`, `eapol`, `handshake`), quebra (`crack`) e `.pcap` são multiplataforma, por serem offline — por isso os testes rodam em Linux, Windows e macOS no CI.
Captura e modo monitor são **Linux** (`AF_PACKET` + netlink). Parsing (`radiotap`, `dot11`, `eapol`, `handshake`), quebra (`crack`) e `.pcap` são multiplataforma, por serem offline — por isso os testes rodam em Linux no CI.
## Transporte da UI
`sabia ui` sobe um servidor em `127.0.0.1` protegido por um token gerado na hora; serve `index.html`/`app.css`/`app.js`/`sabia.png` embutidos no binário e uma API JSON. O app Tauri usa os mesmos arquivos, chamando o `Engine` direto por comandos Tauri em vez de HTTP.
`sabia ui` sobe um servidor em `127.0.0.1` protegido por um token gerado na hora; serve `index.html`/`app.css`/`app.js`/`logo.png` embutidos no binário e uma API JSON. O app Tauri usa os mesmos arquivos, chamando o `Engine` direto por comandos Tauri em vez de HTTP.
+67
View File
@@ -0,0 +1,67 @@
# O que o Sabiá suporta
[English](../support.md) · **Português**
Matriz do que existe hoje (versão 1.0.3). Para o que vem a seguir, veja o [ROADMAP](../../ROADMAP.pt-BR.md).
## Plataformas
| | Descoberta e captura | Análise e quebra offline | App desktop |
|---|---|---|---|
| Linux | ✅ root, adaptador em modo monitor | ✅ | ✅ AppImage e deb |
| Windows | ❌ | ✅ `.pcap`, dicionário/regras/máscara | ✅ instalador |
| macOS | ❌ | ✅ `.pcap`, dicionário/regras/máscara | ❌ sem build |
A captura ao vivo usa `AF_PACKET` e netlink; exige Linux, root (ou `CAP_NET_ADMIN`/`CAP_NET_RAW`) e uma placa com modo monitor. Injeção (`deauth`, Evil Twin) exige uma placa que também injete. O app desktop pede elevação ao abrir.
## Descoberta
- Varredura dos canais de **2.4, 5 e 6 GHz**, limitada pela placa e pelo _regulatory domain_.
- **Pontos de acesso e clientes** com SSID, BSSID, canal, sinal, tipo de segurança, detalhes de WPS e fabricante.
- **Modo monitor** ligado/desligado por netlink/`iw`, com recuperação automática se o NetworkManager retomar a interface.
- **Canais suportados** informados por rádio.
## Captura e análise
| Item | Suporte |
|---|---|
| 4-way handshake (EAPOL) | ✅ detectado e guardado para quebra offline |
| PMKID | ✅ detectado e guardado, inclusive caça sem cliente |
| Escrita e leitura de `.pcap` | ✅ compatível com as outras ferramentas 802.11 |
| Decifração CCMP | ✅ para um cliente cuja PSK já é conhecida |
| Parsers radiotap / 802.11 / EAPOL | ✅ |
## Quebra (WPA/WPA2-PSK)
| Modo | Suporte |
|---|---|
| Dicionário | ✅ rockyou + Probable-Wordlists por padrão (9,7 milhões de senhas) |
| Regras de mutação | ✅ estilo hashcat |
| Máscara/força bruta | ✅ `?d?l?u?s?a` |
| Verificação | ✅ PMK por PBKDF2-HMAC-SHA1 + MIC (4-way) ou PMKID |
| Exportação | ✅ `.hc22000` para hashcat/John |
WPA3/SAE **não** cai por dicionário de handshake; o escopo da quebra é WPA/WPA2-PSK.
## Ataques autorizados
- **Desautenticação** direcionada ou contínua, com `--yes` / confirmação explícita de autorização.
- **Teste de PMF** e **caça de PMKID sem cliente**.
- **WPS PIN / Pixie Dust** com o `reaver` embutido (GPL-2) ou `bully` quando instalado.
- **Evil Twin PSK**: clona um AP visto com portal cativo; a senha só é aceita depois de conferida contra o handshake real já capturado.
- **Evil Twin Enterprise** (802.1X/EAP): captura credenciais automaticamente, sem portal. Exige `hostapd-wpe` e uma segunda interface Wi-Fi em modo AP.
## Relatórios, auditoria e diagnóstico
- **Relatório de auditoria paginado** (capa, sumário, achados, pontuação de canais, trilha de auditoria), gerado localmente.
- **Trilha de auditoria encadeada por hash** para toda ativação de modo monitor e sessão de captura (`sabia audit show`).
- **`sabia doctor`** confere privilégios, ferramentas e interfaces antes da captura.
## O que o Sabiá não faz
- Quebrar handshake WPA3/SAE, ou recuperar senha sem handshake/PMKID capturado e uma candidata correspondente.
- Capturar no Windows ou no macOS; nessas plataformas só há análise offline.
- Dispensar a confirmação de autorização para `deauth`, WPS ou Evil Twin.
- Garantir cobertura de 5/6 GHz: depende da placa, do _regulatory domain_ e do driver.
- Fazer um cliente enterprise confiar num certificado autoassinado quando ele valida a cadeia (comum em perfil corporativo gerenciado).
- Acelerar a quebra por GPU ainda; a quebra é feita na CPU.