Sabiá

Sabiá

Auditoria de Wi-Fi livre e gratuita.
Terminal e interface gráfica · captura no Linux, análise offline em Windows, Linux e macOS · uso autorizado.

Terminal · Interface · Arquitetura · Roadmap · Changelog

English · Português

--- O Sabiá junta, numa única varredura, o que ferramentas como `airodump-ng`, `hcxdumptool`, `aircrack-ng` e `wifite` fazem separadamente — em um só binário Rust, sem depender de `libpcap`: - **Descoberta de redes:** percorre os canais de **2.4, 5 e 6 GHz** e lista os pontos de acesso e os clientes associados, com SSID, BSSID, canal, sinal e tipo de segurança. - **Modo monitor sem scripts:** liga e desliga o modo monitor da placa direto pelo netlink/`iw`, e mostra os canais que o rádio suporta. - **Captura de handshake:** reconhece o **4-way handshake (EAPOL)** e o **PMKID** no ar e guarda só o que é preciso para a quebra offline. - **Quebra offline por dicionário:** recalcula a PMK com **PBKDF2-HMAC-SHA1** e confere o **MIC** (4-way) ou o **PMKID** (`HMAC-SHA1(PMK, "PMK Name" …)`) — para WPA/WPA2-PSK. - **pcap de ida e volta:** grava os quadros capturados em `.pcap` e **analisa um `.pcap` offline** (redes, clientes e handshakes), compatível com as outras ferramentas. - **Teste de desautenticação:** envia _deauth_ a um AP/estação para forçar uma reassociação — só com a confirmação explícita de autorização (`--yes`). - **Trilha de auditoria:** toda ativação de modo monitor e sessão de captura fica registrada numa trilha local **encadeada por hash**. - **Diagnóstico:** o `doctor` confere privilégios, ferramentas e interfaces antes de você começar. ## Uso autorizado O Sabiá é uma ferramenta de **auditoria** — para testar a segurança de redes **suas** ou de redes que você tem **autorização explícita** para avaliar. - Capturar handshakes, enviar desautenticação ou quebrar senhas de redes de terceiros **sem permissão é ilegal** na maioria dos países. A responsabilidade é de quem usa. - A desautenticação (`deauth`) exige a flag `--yes`, uma afirmação de que você tem autorização para testar aquela rede. - Toda ativação de modo monitor e sessão de captura é **registrada na trilha de auditoria local** (`sabia audit show`), com encadeamento por hash para detectar adulteração. - **Nada seu é enviado para fora.** O único acesso à rede por padrão é a verificação de atualização ao abrir o app (desligável). - Senhas de dicionário e handshakes ficam só na sua máquina. ## Instalação Baixe o pacote do seu sistema em **[Releases](../../releases)**: | | CLI | App gráfico | |---|---|---| | Windows | `sabia-*-windows-x86_64.zip` | instalador `.msi` / `.exe` | | macOS | `sabia-*-macos-{aarch64,x86_64}.tar.gz` | `.dmg` | | Linux | `sabia-*-linux-{x86_64,aarch64}.tar.gz` | `.AppImage` / `.deb` | Cada arquivo tem um `.sha256` ao lado. Compilar do código: `cargo build --release -p sabia-cli` (Rust 1.80+). **Atualizações:** o app desktop consulta o GitHub ao abrir; havendo versão nova, um botão oferece **Atualizar agora**: ele baixa o binário certo para a plataforma, confere o **SHA-256** e troca o executável em uso — você não precisa baixar nada na mão. A consulta é uma única requisição à API de releases e nada seu é enviado. > Os binários ainda **não são assinados**: o SmartScreen (Windows) e o Gatekeeper (macOS) vão avisar. Confira o SHA-256. **Captura e modo monitor exigem Linux e privilégio de root** (`CAP_NET_ADMIN`/`CAP_NET_RAW`): a captura crua usa `AF_PACKET` e o controle de interface usa netlink. A **análise de `.pcap` e a quebra offline** rodam também em Windows e macOS. O app desktop pede elevação de administrador sozinho ao abrir. ## Começando ```bash sabia doctor # privilégios, ferramentas e interfaces sabia iface list # interfaces Wi-Fi e seus modos sudo sabia iface monitor wlan0 on # liga o modo monitor sudo sabia scan wlan0 --band all --out ar.pcap # percorre os canais e grava o ar sabia analyze ar.pcap # lê um .pcap offline sabia crack ar.pcap --wordlist lista.txt # quebra o handshake por dicionário ``` Teste autorizado de desautenticação e todos os outros comandos (`audit`, `update`, `ui`) estão em **[docs/pt-BR/cli.md](docs/pt-BR/cli.md)**. ## Interface gráfica App desktop (Tauri) com sidebar de interfaces, painel de captura com linha de sinal animada e uma tabela de redes com barras de sinal e selos de segurança por cor. O mesmo front-end roda no navegador com `sabia ui`. Mais detalhes em **[docs/pt-BR/interface.md](docs/pt-BR/interface.md)**. - Seleção da interface, ativação de **modo monitor** e início/parada de **captura** por botão. - Tabela de **redes vistas** em tempo real, com sinal, canal e segurança. - Aviso de **uso autorizado** sempre à vista e elevação automática de privilégio ao abrir. - Botão de **atualização** em um clique, temas **Auto, Claro e Escuro** e interface em **português e inglês**. ## Limites conhecidos - **Captura só no Linux**, com placa que suporte **modo monitor** (e injeção, para `deauth`). Em Windows e macOS o Sabiá faz só análise de `.pcap` e quebra offline. - **WPA3/SAE** não cai por dicionário de handshake — a quebra cobre **WPA/WPA2-PSK** (4-way e PMKID). - **5 e 6 GHz** dependem da placa e do _regulatory domain_; alguns canais ficam passivos (sem _probe_). - **Senhas fora do dicionário não voltam:** a quebra é só força de dicionário, sem regras nem máscara ainda. - **Windows e macOS:** o código compila e é testado em CI, mas a captura ao vivo não roda nessas plataformas. ## Para onde vai Resumo do [ROADMAP](ROADMAP.pt-BR.md): | | | |---|---| | **Feito** | Modo monitor por netlink, varredura 2.4/5/6 GHz, captura de 4-way e PMKID, escrita e leitura de `.pcap`, quebra por dicionário (WPA/WPA2-PSK), `deauth` autorizado, trilha de auditoria por hash, `doctor`, CLI + app desktop, atualização em um clique | | **Próximo** | Regras e máscaras na quebra, aceleração por GPU, exportação para o formato do hashcat (`22000`) | | **Depois** | Ataque a WPS, _rogue AP_/_evil twin_ para teste autorizado, captura em Windows (Npcap) | | **Longo prazo** | WPA3/SAE _downgrade_, validação em hardware variado | ## Desenvolvimento ``` crates/sabia-core núcleo: interfaces, netlink, radiotap, 802.11, EAPOL, handshake, captura, crack, auditoria, update crates/sabia-cli binário `sabia` (CLI + servidor local da UI) apps/gui interface (ui/ = HTML, CSS e JS; src-tauri/ = app desktop) scripts/ apoio de CI (instalação de dependências em cache, checagem de i18n) docs/ terminal, interface e arquitetura ``` ```bash cargo test --workspace cargo clippy --workspace --all-targets node scripts/check-ui-i18n.mjs # cobertura da tradução da interface ``` Veja [CONTRIBUTING.pt-BR.md](CONTRIBUTING.pt-BR.md) e [docs/pt-BR/arquitetura.md](docs/pt-BR/arquitetura.md). Versões seguem [SemVer](https://semver.org/lang/pt-BR/); mudanças em [CHANGELOG.pt-BR.md](CHANGELOG.pt-BR.md). Para publicar: `git tag vX.Y.Z && git push --tags` (o workflow `release` compila e publica tudo). Vulnerabilidades: [SECURITY.pt-BR.md](SECURITY.pt-BR.md). ## Licença [MIT](LICENSE-MIT) ou [Apache-2.0](LICENSE-APACHE), à sua escolha.