Argos é uma ferramenta profissional de recuperação forense de imagens escrita em Rust. Especializada em recuperar imagens JPEG e PNG de dispositivos de armazenamento, mesmo após múltiplas formatações.
- Recuperação Profunda: Recupera imagens mesmo de discos formatados dezenas de vezes
- Zero-Overhead: Arquitetura otimizada para máxima performance
- Direct I/O: Leitura direta do disco sem cache do sistema operacional
- Resiliência: Pula automaticamente setores defeituosos
- Multi-formato: Suporta JPEG e PNG
- Interface Amigável: CLI interativa com wizard guiado
sudo ./target/release/argos --scanIsso abrirá um wizard interativo que:
- Descobre todos os dispositivos de bloco disponíveis
- Permite selecionar o dispositivo a ser analisado
- Solicita o diretório de saída
- Confirma a operação antes de iniciar
sudo ./target/release/argos --device /dev/sda --output ./recovered- Rust 1.70+ (
rustup install stable) - Linux ou Windows
- Acesso root/administrador (para leitura de dispositivos de bloco)
# Clone o repositório
git clone https://github.com/seu-usuario/argos.git
cd argos
# Compile em modo release (otimizado)
cargo build --release
# O binário estará em target/release/argosO Argos utiliza uma arquitetura de pipeline eficiente:
┌─────────────┐ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐
│ SCAN │───▶│ ANALYZE │───▶│ CARVE │───▶│ EXTRACT │
│ (I/O) │ │ (CPU) │ │ (CPU) │ │ (I/O) │
└─────────────┘ └─────────────┘ └─────────────┘ └─────────────┘
- io: Direct I/O com buffers alinhados (O_DIRECT no Linux)
- analysis: Cálculo de entropia e validação de assinaturas
- carving: Algoritmos de reconstrução (Linear, Bifragment)
- extraction: Escrita segura com fsync
| Métrica | Target | Alcançado |
|---|---|---|
| Binary size | <5MB | ~900KB |
| Throughput SSD | >500 MB/s | ✓ |
| Memory footprint | <100MB/TB | ✓ |
# Executa todos os testes
cargo test
# Executa testes com output detalhado
cargo test -- --nocaptureBusca pares header→footer contíguos. O método mais rápido e confiável para arquivos não fragmentados.
Para arquivos divididos em 2 fragmentos. Útil quando há dados corrompidos/sobrescritos entre header e footer.
- Execute como root: Necessário para acessar dispositivos de bloco
- Operação somente-leitura: O Argos NUNCA modifica o dispositivo de origem
- Espaço de saída: Certifique-se de ter espaço suficiente para os arquivos recuperados
MIT License - Veja LICENSE para detalhes.
Contribuições são bem-vindas! Por favor:
- Fork o repositório
- Crie uma branch para sua feature (
git checkout -b feature/amazing) - Commit suas mudanças (
git commit -m 'feat: add amazing feature') - Push para a branch (
git push origin feature/amazing) - Abra um Pull Request
Argos - Recuperação de imagens com precisão forense 🔮