
Em nosso trabalho, usamos ativamente o hashcat, mas começamos a perder alguns recursos deste produto. Por exemplo: a capacidade de enviar notificações, a presença de uma interface unificada para gerenciar hashes de cracking, armazenamento conveniente de hashes "crackeados" (depois de um tempo, ver hashcat.potfile machuca seus olhos). Em algumas situações, é necessário executar o cracking paralelo de hashes, ou seja, distribuir tarefas de cracking entre vários hosts.
Nesta série de artigos, queremos compartilhar nossas "descobertas" sobre o tópico de interfaces de gerenciamento e / ou o lançamento distribuído do programa hashcat, armazenando estatísticas sobre hashes "rachados". Na primeira parte, veremos algumas soluções existentes e, em seguida, veremos mais de perto o produto Hashtopolis.
Em geral, se o tópico estiver próximo de você, pedimos "nos bastidores" e nos comentários.
Vamos falar sobre gatos
Um pouco sobre o próprio hashcat (hashcat)
O Hashcat é, de acordo com os criadores, a ferramenta de recuperação de senha mais rápida do mundo. As versões estão disponíveis para Linux, macOS e Windows e podem ser apresentadas em versões baseadas na CPU ou GPU.
O Hashcat ganhou popularidade devido às deficiências encontradas por seu criador em outros programas que usam criptografia de dados. Atualmente, o Hashcat é usado ativamente para selecionar senhas WPA / WPA2, senhas de crack de documentos do MS Office, PDF, 7-Zip, RAR, TrueCrypt.
Fonte
Que tipo de hash é esse?Hoje, o método de autenticação mais comum é a "autenticação por senha". O usuário (ou "processo"), de uma forma ou de outra, envia a senha para verificação ao sistema de destino, onde os dados obtidos são comparados com a representação armazenada no sistema. Por exemplo, no caso de autenticação Digest, a senha não é transmitida e não é armazenada de forma clara. Com a ajuda da criptografia, um determinado identificador de sessão é convertido aplicando um hash do valor da senha. Um procedimento semelhante é executado no sistema de destino e, se os resultados das duas operações corresponderem, a autenticação será considerada aprovada, um cookie de autorização ou TGT ou outra coisa será gerada.
O mecanismo de autenticação na Web está resumido aqui: https://habr.com/en/post/28534/ e em detalhes aqui: https://habr.com/ru/company/dataart/blog/262817/
O pesquisador de segurança (ou o auditor) tem outra tarefa - pegar / adivinhar as senhas, interceptar ou ignorar as senhas de autenticação.
No caso de ataques a senhas, é possível dividir em duas categorias (e tudo o mais na terceira, por exemplo, o ataque "espionar a entrada do usuário"):
- ataques on-line: várias tentativas de autenticação, adivinhando a senha, que pode "fazer muito barulho" ou causar o bloqueio da conta. É semelhante a “pegar” com chaves mestras em um buraco de fechadura - os proprietários podem ligar para a polícia ou até causar ferimentos;
- Ataques offline: o invasor conseguiu obter hashes e não é necessário um sistema mais direcionado para a seleção de senhas; todo o processo fica do lado do invasor. Como se eles conseguissem "moldar" a fechadura e "picar" longe da porta vigiada.
Podem surgir situações como a seleção de senhas para arquivos, documentos protegidos ou chaves privadas, mas, em geral, trata-se de um ataque de senha, ou seja, você precisa pegar a chave / combinação na fechadura.
A maioria dos ataques a senhas e hashes pode ser dividida em:
- "Dicionário" (inglês "dicionário", "lista de palavras")
- "Testa" (ou "força bruta" do inglês "força bruta", ou seja, "força bruta")
- "Híbrido" (dicionário + alguma máscara de força bruta)
Como resultado da pesquisa na rede por “interfaces” prontas para trabalhar com o hashcat, encontramos as seguintes soluções:
Os nomes começam com a palavra 'hash' - do inglês, essa palavra é traduzida como “hash”, “confusão”, “um prato de carne e legumes finamente picados”. Se você literalmente traduzir esses nomes para o russo, as frases resultantes criarão uma confusão no cérebro do leitor. O nome "Hashtopussy" é especialmente descontrolado (sorriso)
Vamos começar a revisão com o
Hashpass . Ele estava interessado na riqueza de funções (à primeira vista): a fila de hashes para hackers, visualização dos apertos de mão WPA capturados no mapa global, C2C para framboesas “spyware”, suporte para informações por SMS, papel de parede bonito, uma interface interessante com visualização. A barra de status do trabalho Hashpass é assim:

Quando imerso na descrição do projeto no GitHub, foi descoberto que, para o cracking distribuído de hashes, o dj-zombie desenvolveu um projeto separado, o Hive. Não conseguimos encontrar informações relevantes sobre este projeto. I.e. "Pronto para uso", você não pode obter um "bastão do condutor" para hackers paralelos em vários hosts. Como uma solução independente, o Hashpass é muito interessante e, dado o projeto
Rotten Pi associado a ele, definitivamente vale a pena prestar atenção ao Hashpass.
Foi aí que o conhecimento de Hashpass terminou; talvez voltemos à sua revisão detalhada em uma série de artigos.
O projeto
Hashview não
é inferior ao seu irmão
Hashpass em termos de funcionalidade rica, e a abordagem do "componente visual" da interface, em nossa opinião, é melhor implementada.
Exemplo de estatísticas da tela:

Aqui está o que o Hashview tem a oferecer:
- Colaboração - o aplicativo suporta a criação de contas separadas e a distribuição de funções
- Suporte de OTP (One Time Password) para autenticação do usuário
- Acesso direto à interface da linha de comandos hashcat da instância
- Criar filas de tarefas de quebra de hash
- Notificações por email do evento
- Pesquisar banco de dados hash interno, nome de usuário, senha
- Sistema de visualização e relatório de métricas
Para instalar o servidor Hashview, você precisa de um hashcat em execução no host, um ambiente RVM, MySQL, Redis válido. Suporte oficialmente declarado para as versões Ubuntu 14.04 e 16.04, em outras distribuições Linux, o trabalho do Hashview foi confirmado pela comunidade.
E agora sobre os "contras":
- O projeto suporta oficialmente o hashcat 4.x, não se sabe sobre o suporte da 5ª versão (há um ticket https://github.com/hashview/hashview/issues/448)
- O suporte ao agente ainda está oficialmente na versão "Alpha" e, no nosso caso, o suporte aos agentes do Windows é importante (https://github.com/hashview/hashview/wiki/04-Distributed-Cracking)
Ambos os projetos, Hashpass e Hashview, dão a impressão de abandono, confirmações no repositório há muito tempo e a documentação não é atualizada.
Decidimos colocar o Hashview em uma prateleira com o Hashpass e seguir para o próximo projeto.
Hashtopolis foi lançado em 2016 como o desenvolvimento de um "invólucro" para o hashcat - Hashtopus (https://github.com/curlyboi/hashtopus). No início, foi chamado de "Hashtopussy", mas por razões de "correção política" foi renomeado "Hashtopolis". Página oficial do projeto: https://hashtopolis.org. De fato, este é um fórum no qual você pode obter informações úteis sobre o produto. Também foi encontrado um canal no Discord: https://discord.gg/S2NTxbz
Recursos e recursos do Hashtopolis:
- Fácil + conveniente para instalar e usar servidores / agentes
- Acesse de qualquer lugar via interface da web
- Capacidade de resposta do servidor com configurações comuns de hospedagem na web
- Agentes autônomos em estações controladas de crack
- Gerenciar dicionários e arquivos de regras
- Atualização automática de Hashtopolis e Hashcat
- Hackeando várias listas de hash do mesmo tipo como se fossem uma única lista
- Um único arquivo para executar o agente no Windows, Linux e OS X
- Arquivos e hashes marcados como "secretos" são distribuídos apenas para agentes marcados como "confiáveis"
- Muitas opções para importar e exportar dados
- Estatísticas ricas em hashes e tarefas em execução
- Representação visual da distribuição de "porções de hashes" (distribuição de partes)
- Aplicativo multiusuário
- Suporte aos níveis de acesso do usuário
- Diferentes tipos de notificações
- Capacidade de criar mini-tarefas para quebrar hashes pela CPU
- Distribuição granular de acesso através do uso de grupos na nomeação de agentes e usuários
O recurso Hashtopolis mais "cativante" para nós foi o suporte a notificações no Telegram diretamente da caixa. Usamos esse mensageiro todos os dias. Parecia extremamente atraente receber notificações oportunas de hashes "rachados". Obviamente, essa funcionalidade pode ser implementada com scripts, mas esse recurso não foi o único que atraiu o Hashtopolis.
O Hashtopolis pode gerenciar instâncias de hashcat a partir da versão 4.0.0. Também implementou suporte para "crackers genéricos" (uma interface de linha de comando comum para o software para "cracking hashes"). Saiba mais sobre crackers genéricos
aqui.A aparência da interface do Hashtopolis é agradável e a navegação fica clara após alguns minutos de conhecimento.
Lista de tarefas:

Belas estatísticas sobre o trabalho do agente:

Fontes adicionais de informação que abordamos sobre o tópico Hashtopolis:
- Repositório do projeto no GitHub: https://github.com/s3inlc/hashtopolis
- Página wiki do projeto GitHub: https://github.com/s3inlc/hashtopolis/wiki
- Blog de um dos desenvolvedores do projeto (s3inlc): https://s3inlc.wordpress.com
- A documentação da API do Hashtopolis é fornecida em um documento PDF: https://github.com/s3inlc/hashtopolis/blob/master/doc/protocol.pdf
Isso conclui a parte introdutória, compartilhamos nossa "primeira impressão". Infelizmente, os projetos revisados não possuem a documentação da melhor qualidade, as informações são dispersas e apresentadas de forma muito concisa.
Esperamos poder despertar o interesse do leitor nos produtos em consideração, porque quanto mais usuários houver, melhores projetos se tornarão e, como resultado, mais informações sobre o uso aparecerão.
Na próxima parte, analisaremos a instalação e a configuração do produto Hashtopolis.