Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
ProtOSINT — ProtOSINT é um script Python que ajuda você a investigar contas do Proton Mail. | Kitploit
Ferramentas/GitHubGitHub/pixelbubble/protosint
OSINT (Inteligência de Fontes Abertas)ReconhecimentoColeta de InformaçõesColeta de Emails
GitHubpixelbubble/protosint

ProtOSINT

ProtOSINT é um script Python que ajuda você a investigar contas do Proton Mail.

Ver Repositório
417621há 1 mêsRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar

ProtOSINT

ProtOSINT é um script Python que ajuda você a investigar contas do Proton Mail.

protosint (1)

Versão

Este é o ProtOSINT v2. A primeira versão existia há alguns anos, mas a API do Proton mudou e as verificações antigas pararam de funcionar, então esta é uma reescrita que traz a ferramenta de volta à vida. Muito obrigado ao NeutrOSINT por manter esse tipo de pesquisa ativa enquanto isso.

Descrição

Esta ferramenta é destinada ao trabalho de OSINT no Proton Mail (apenas para uso educacional e autorizado). Você fornece um endereço de e-mail, um nome de usuário ou um domínio, e ela informa o que pode encontrar: se o endereço realmente existe, quando a chave de criptografia da conta foi criada, qual algoritmo ela usa e se um domínio personalizado está hospedado no Proton.

Ela possui quatro módulos:

  • [1] Verificar um e-mail do Proton: ele existe e qual é a data e o tipo de criação da chave.
  • [2] Enumerar um nome de usuário em todos os domínios do Proton (protonmail.com, protonmail.ch, pm.me, proton.me).
  • [3] Verificar se um domínio usa o Proton Mail (através dos seus registros MX, verificados com o servidor de chaves).
  • [4] Verificar em lote uma lista de endereços através de uma sessão real do Proton logada.

Como funciona (e porquê)

O Proton torna a enumeração de contas deliberadamente difícil, então uma verificação ingênua mentirá para você. O ProtOSINT contorna isso combinando três fontes e confiando na correta para cada tarefa.

O servidor de chaves mente sobre endereços inexistentes. O servidor de chaves públicas do Proton (pks/lookup) retorna uma chave "falsa" (decoy) - com uma data de criação inventada - para qualquer endereço em um domínio Proton, existente ou não. Portanto, uma "chave válida + data bonita" não é prova de que o endereço existe. O servidor de chaves ainda é útil, mas apenas para ler a data real da chave de um endereço que você já confirmou que existe.

A API da conta é melhor, mas não é perfeita. A API de conta do Proton (/users/available) informa se um nome de usuário está disponível. Ela está correta na maioria das vezes, mas verifica o nome de usuário, não o endereço específico, então pode errar em casos extremos - [email protected] pode parecer "ocupado" mesmo que esse endereço .ch nunca tenha sido criado.

A única verificação totalmente confiável é a janela de composição do próprio Proton. Quando você digita um endereço no campo "Para", o Proton o valida e o marca em vermelho se a caixa de correio não existir. O ProtOSINT pode conduzir isso com Selenium: ele faz login na sua conta Proton, abre uma nova mensagem, digita o endereço e lê se o Proton aceita ou rejeita. Essa é a resposta autoritativa, e é o que os módulos 1, 2 e 4 usam quando o Selenium está ativado (que é o padrão).

Domínios personalizados são verificados por DNS. Para um domínio como example.com, a questão real é para onde seu e-mail é roteado. Se o registro MX aponta para o Proton (mail.protonmail.ch / mailsec.protonmail.ch), o domínio está no Proton Mail. O módulo 3 lê os registros MX e os verifica com o servidor de chaves.

Requisitos

  • Python 3 (3.7 ou mais recente)
  • Os pacotes Python em requirements.txt (requests, selenium)
  • Um navegador (Chrome/Chromium ou Firefox) para a verificação do Selenium

Instalação

Clone o repositório e instale as dependências Python:

root@kitploit:~
git clone https://github.com/pixelbubble/ProtOSINT.git
cd ProtOSINT
python3 -m venv venv
source venv/bin/activate          # Windows: venv\Scripts\activate
pip install -r requirements.txt

Você também precisa de um navegador instalado para a verificação do Selenium. O Selenium baixa o driver correspondente por conta própria, então você não precisa instalar um chromedriver/geckodriver separado.

Debian / Ubuntu / Kali:

root@kitploit:~
wget -O /tmp/chrome.deb https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo apt update
sudo apt install -y /tmp/chrome.deb
# alternativas: sudo apt install -y chromium   (ou: firefox-esr)

macOS (Homebrew):

root@kitploit:~
brew install --cask google-chrome  # ou: brew install --cask firefox

Windows: instale o Chrome ou Firefox normalmente a partir do site.

Executando como root (comum no Kali)? O Chrome precisa da flag --no-sandbox ou trava na inicialização. O ProtOSINT já a define para você, então não há nada a fazer.

Configuração

Na primeira vez que você executar o script, ele cria um arquivo config.json ao lado:

root@kitploit:~
{
  "proton": {
    "username": "",
    "password": ""
  },
  "settings": {
    "use_selenium": true,
    "headless": true
  }
}
  • use_selenium (true/false) usa a verificação de composição do Selenium para os módulos 1, 2 e 4 (o método confiável). Defina como false para voltar à API de conta mais rápida.
  • headless (true/false) executa o navegador em segundo plano para que nenhuma janela apareça. Defina como true apenas em uma conta sem 2FA ou CAPTCHA, pois você não pode resolvê-los quando a janela está oculta. Defina como false se precisar ver o navegador.
  • username / password são seu login do Proton. Você pode preenchê-los ou deixá-los vazios e o script perguntará quando iniciar. Deixar a senha vazia é mais seguro - ela nunca é gravada em disco. Se você colocar credenciais no arquivo, não as commite (já está no .gitignore).

Se você fechar o navegador no meio da sessão, a próxima verificação que precisar dele o reabrirá e fará login novamente automaticamente.

Uso

root@kitploit:~
python3 protosint.py

Escolha um módulo no menu e siga as instruções. q sai (e fecha o navegador se um estiver aberto).

Dicas para investigação do Proton Mail

Proton Mail não diferencia maiúsculas de minúsculas

O nome da conta não diferencia maiúsculas de minúsculas, e o Proton trata ., _ e - como transparentes. Qualquer coisa após um + também é ignorada. Portanto, todos estes são a mesma conta que [email protected]:

  • [email protected]
  • [email protected]
  • [email protected]
  • [email protected]

Todos compartilham a mesma chave e timestamp.

O timestamp é a data da chave, nem sempre a data da conta

A data que o ProtOSINT mostra é quando a chave PGP primária da conta foi criada - o que nem sempre é o mesmo que quando a conta foi criada.

Exemplo 1 - o alvo nunca tocou nas chaves. Aqui a data da chave é a data real de criação da conta.

  • 2021-01-12: conta [email protected] é criada.
  • 2021-01-15: ProtOSINT relata 2021-01-12.

Exemplo 2 - o alvo regenerou a chave. Agora a data reflete a chave mais nova, não a conta.

  • 2021-01-12: conta [email protected] é criada.
  • 2021-01-13: alvo gera uma nova chave em Configurações → Chaves de criptografia.
  • 2021-01-15: ProtOSINT relata 2021-01-13, não 2021-01-12.

Chaves de criptografia

O ProtOSINT mostra o tipo de chave que a conta usa. O que o servidor de chaves relata para a chave primária é um dos seguintes:

  • Curve25519 - ECC moderna (chave de assinatura Ed25519); este é o padrão em contas mais novas e o mais rápido e seguro
  • RSA 2048 - o padrão antigo em contas criadas antes de 2021
  • RSA 4096 - mais forte, mas mais lento, geralmente visto quando alguém importou uma chave para compatibilidade legada

Você também pode ver X25519, Ed25519 ou RSA 3072 em algumas chaves - todas são lidas diretamente do ID do algoritmo OpenPGP da chave.

Domínios personalizados

Um plano pago do Proton permite que você anexe seu próprio domínio. Se [email protected] resolve para o Proton (módulo 1 ou 3), o alvo está em um plano pago do Proton. O módulo 3 confirma isso através dos registros MX do domínio, que é o sinal mais confiável.

Limites de taxa

O Proton limita tanto o servidor de chaves (erro 2028) quanto a API de conta (HTTP 429). Os limites exatos não são documentados e parecem mudar, então se você for bloqueado, espere um pouco ou execute novamente de um IP diferente. O método do Selenium usa sua sessão normal logada, então não é afetado por esses limites.

Contribuindo

Sinta-se à vontade para clonar o projeto. Para algo grande, abra uma issue primeiro para discutir.

O módulo Selenium lê o aplicativo web do Proton, então se o Proton alterar sua página, os seletores em selenium_login() e selenium_check_emails() podem precisar de uma pequena atualização. Esse é o primeiro lugar para verificar se a verificação do navegador parar de funcionar.

Licença

MIT

Baixar ferramenta