
Colocando a análise na esteganálise.
██╗ ██╗ ██████╗
██║ ██╔╝ ╚════██╗
█████╔╝ █████╔╝
██╔═██╗ ██╔═══╝
██║ ██╗ ███████╗
╚═╝ ╚═╝ ╚══════╝
Cada único bit.
Suite de esteganálise fácil de usar, informativa e abrangente.
Esta é uma ferramenta CLI para o meu side hustle SaaS (khao2.com) para esteganálise.
K2 é uma plataforma versátil de detecção de esteganografia projetada para esteganálise em imagens.
K2 é diferente porque usa um amplo espectro de testes estatísticos e matemáticos que verificam pequenas anomalias que algoritmos altamente sofisticados (ex.: J-UNIWARD, JMiPOD) deixam para trás, em vez de procurar assinaturas diretas, procura anomalias/sinais.
A parte de ML do K2 é usada para agregar todas as anomalias e emitir um veredito binário sobre a probabilidade de a imagem conter esteganografia.
pip install -e .
Obtenha um token:
Configure seu token de API:
k2 token set k2_yourtokenhere32characterslower
Configure o endpoint da API:
k2 endpoint set https://api.khao2.com
Analisar uma imagem:
k2 dig image.png
Acompanhar o progresso da varredura em tempo real:
k2 dig image.png --watch
Obter resultados da varredura por ID:
k2 get <scan-id>
Processar múltiplas imagens:
k2 batch image1.png image2.jpg image3.gif
Varrer diretórios recursivamente:
k2 batch /path/to/images --recursive
Padrões de arquivo personalizados:
k2 batch /path/to/files --pattern "*.png" --recursive
Listar plugins disponíveis:
k2 plugins list
Carregar um plugin:
k2 plugins load batch_processor
Gerar relatório de painel HTML:
k2 report dashboard.html
Gerar resumo executivo (últimos 7 dias):
k2 report executive_summary.html --executive --days 7
Exportar como PDF:
k2 report analysis.pdf --format pdf
Listar varreduras recentes:
k2 list --limit 10
Verificar cota:
k2 quota
Visualizar análises de uso:
k2 usage
Khao2 possui um poderoso sistema de plugins que permite extensibilidade e funcionalidades avançadas:
Crie um plugin implementando o protocolo apropriado e colocando-o no diretório de plugins. Veja os plugins integrados para exemplos.
Este é um projeto pessoal que se tornou um side hustle SaaS. Eu originalmente construí isso para meus próprios desafios CTF sem intenção de torná-lo um produto.
As pessoas podem dizer que 5 varreduras por mês gratuitas é muito pouco, mas lembre-se de que essas varreduras estatísticas são sequenciais por natureza e levam até + minutos onde são executadas em HPC Modal.com.
██╗ ██╗ ██████╗
██║ ██╔╝ ╚════██╗
█████╔╝ █████╔╝
██╔═██╗ ██╔═══╝
██║ ██╗ ███████╗
╚═╝ ╚═╝ ╚══════╝
KHAO2 IMAGE FORENSICS | Every little bit.
✅ ANALYSIS COMPLETE
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
VERDICT: BENIGN
Possibility: 8%
Confidence: 85.0%
File: test.png
Size: 88 bytes | 1x1 | PNG
SSDEEP: 3:yionv//thPlE+tnMysyxdk/Slc+0kxQcnd6vtjp:6v/lhPfZMys+k/WT0krnd6vdp
SHA512: cd96b0688ad40f6b8ea0f2dd5529ae14d0037fbf8b30e1a1d0fd1a81a16e4c4305c95f1673aee7808a618c70ce4d0d4706c31dc7fb8cf4deab39c8ce584d7535
SHA256: 39768f51d067905ee91c1422fe26ea2cc978ff0ac12bb61b3878f094c2cd1db3
MD5: b34c91ec15a592d974131f02c1f05cb6
ENGINES: 329/339 completed | 10 failed
Runtime: 373489ms | 29.84K FLOPs
FILE INTEGRITY
├─ Format: PNG image, 1 x 1, 8-bit/color RGBA, non-interlaced
├─ Mode: RGBA
STATISTICAL ANALYSIS
├─ Entropy: -0.0
├─ Size Score: 0.09
└─ Strings Found: 0
ANOMALIES DETECTED: 1 (85.0% CONFIDENCE)
! #082_CLA Perfect lag correlation in a 1x1 image, likely trivial and not indicative of hidden data
Confidence: 50.0% | Anomaly Value: 10.0
IDENTIFIED MEDIUM: none
IDENTIFIED VECTOR: No hidden data detected; image size and entropy too low for embedding
TECHNIQUE CARDINALS: LSB Replacement,PNG ancillary chunks,Palette LSB
RECOMMENDED NEXT STEPS:
Run pngcheck and exiftool to list all PNG chunks, use StegDetect or zsteg on the file, and re‑run binwalk with deeper recursion to confirm no hidden payloads.
POTENTIAL FALSE NEGATIVE REASONS:
• Extremely small carrier (30% likelihood)
• Stego in unparsed metadata (25% likelihood)
• Custom proprietary embedding (20% likelihood)
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
Executar testes:
pytest
Instalar em modo de desenvolvimento:
pip install -e .