SOCMIntelligence
Ferramenta web SOCMINT / OSINT multiplataforma.
15 módulos de fontes, grafo de identidade multiplataforma, pontuação de mesma pessoa, gestão de casos e relatórios à prova de adulteração — em um único aplicativo FastAPI que inicia com um único comando.
O que é
O SOCMIntelligence coleta dados públicos de diversas plataformas, transforma cada resultado em gráficos, tabelas de achados e um grafo de relacionamentos, e mescla tudo em um único grafo de identidade multiplataforma. Como a mesma conta recebe o mesmo ID de nó em todos os lugares, um e-mail, domínio ou nome de usuário que aparece em duas varreduras diferentes é automaticamente vinculado — assim você pode ver quem é quem entre os serviços.
Módulos
| Grupo | Módulos |
|---|
| Redes sociais | X (Twitter) · YouTube · TikTok · Snapchat · Reddit · Mastodon · Telegram · Steam |
| Desenvolvedor | GitHub · GitLab · Stack Exchange · Hacker News |
| Identidade e arquivos | Keybase · Gravatar · Wayback Machine |
Cada módulo lê apenas dados públicos (ou uma API oficial quando uma chave é fornecida). Não há scraping de credenciais/sessão de contas privadas.
Recursos
- Grafo de relacionamentos — um grafo de força D3 que mescla cada varredura bem-sucedida. Correspondências multiplataforma (e-mail, domínio, nome de usuário compartilhados), pivô (clique duplo em um nó para varreê-lo no módulo correto), busca, filtros de tipo, exportação em PNG/JSON.
- Linha do tempo — posts, comentários, uploads e eventos de criação de conta de cada conta em um único eixo, além de um mapa de calor de sobreposição de horas e uma tabela de similaridade de horas.
- Correspondência de identidade — uma pontuação de 0 a 100 de “mesma pessoa?” por par de contas com justificativas (vínculo verificado/criptográfico, e-mail compartilhado, similaridade de nome de usuário e nome de exibição, domínio pessoal compartilhado, pHash de avatar, horários de atividade). Pares ≥ 40 são desenhados no grafo.
- Comparação — coloque 2 ou mais contas varridas do mesmo módulo lado a lado (tabela de KPIs + gráfico de barras, maior valor destacado).
- Marcações do analista — marque nós do grafo como Verificado / Suspeito / Descartado, adicione notas, adicione nós e links manuais. Tudo salvo no caso.
- Gestão de casos — crie um caso, ative-o, e varreduras/marcações/notas são salvas automaticamente. Importe/exporte um pacote
.socmint.
- Rastreamento de mudanças (Monitoramento) — revarra alvos em um agendamento e registre o que mudou (campos, links novos/removidos).
- Integridade de evidências — os dados brutos de cada varredura são hasheados (SHA-256 sobre JSON canônico) no momento da coleta; um botão de verificação comprova se foram alterados.
- Exportações — relatório HTML / PDF, Excel (.xlsx), GraphML (Gephi/yEd), GEXF (Gephi), Maltego CSV, JSON.
- Interface bilíngue — alternância Turco / Inglês (padrão Turco); relatórios, planilhas, rótulos de gráficos, formatos de data e número seguem o idioma selecionado.
- Página de configurações — chaves de API, proxy / Tor / rotação de lista de proxies e limites de taxa, tudo gerenciado pela interface em vez do
.env.
Início rápido
python3 -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
uvicorn server:app --host 0.0.0.0 --port 8000
Em seguida, abra http://localhost:8000 — documentação da API em http://localhost:8000/docs.
Execuções seguintes precisam apenas de:
source .venv/bin/activate && uvicorn server:app --port 8000
Docker: docker compose up --build (serviço único).
Configuração
Toda a configuração fica na página Settings (salva em data/settings.json; o .env ainda é lido, mas o Settings tem prioridade):
- Chaves de API — armazenadas no lado do servidor, nunca retornadas ao navegador (apenas “set” + os últimos 4 caracteres são exibidos).
YOUTUBE_API_KEY — obrigatória para o módulo do YouTube.
X_BEARER_TOKEN — API v2 do X (Twitter). Sem ela, o módulo do X exibe dados de exemplo claramente rotulados para que você possa visualizar a saída antes de adicionar um token.
STEAM_API_KEY, STACKEXCHANGE_KEY, GRAVATAR_API_KEY, GITLAB_TOKEN — opcionais, desbloqueiam dados extras.
- Proxy / Tor — desligado, Tor, um único proxy personalizado, ou uma lista de proxies que rotaciona em round-robin por varredura (distribui os limites de taxa).
- Taxa — número de varreduras paralelas e atraso entre requisições.
Observações
- X (Twitter): o plano gratuito do X é muito limitado — mesmo com um token, o histórico de posts pode voltar vazio em alguns planos; o módulo rotula esse caso.
- Telegram lê apenas a prévia pública
t.me/s/ (sem login).
- Gravatar recebe apenas o hash MD5/SHA-256 de um e-mail, nunca o e-mail em si.
- TikTok frequentemente aplica limites de taxa/bloqueia bots; o módulo tenta novamente e distingue um “não encontrado” real de um bloqueio temporário.
- As distribuições de tempo são em UTC. O “crescimento” de seguidores do TikTok é uma estimativa (marcada como tal), não um histórico real.
backend/app/tools/youtube_osint.py vem com uma chave de API de fallback embutida — substitua-a pela sua própria nas Configurações e remova essa linha.
Licença
Apache License 2.0 — consulte LICENSE.