Escolar Documentos
Profissional Documentos
Cultura Documentos
gg/cmx
User: RDBackups
Já fiz alguns tutoriais sobre quebra de senha, incluindo alguns para Linux e
Windows, WEP e WPA2, e até mesmo senhas online usando THC Hydra. Agora, pensei que
poderia valer a pena começar uma série sobre quebra de senhas em geral. A quebra de
senha é uma arte e uma ciência, e espero mostrar a você as muitas maneiras e
sutilezas envolvidas.
Começaremos com os princípios básicos de quebra de senhas que são essenciais para
TODAS as técnicas de quebra de senhas, seguidas de algumas das ferramentas e
tecnologias utilizadas. Então, um por um, mostrarei como usar esses princípios e
tecnologias de forma eficaz para quebrar ou capturar os vários tipos de senhas
existentes.
A importância e os métodos de quebra de senha
Embora algumas senhas sejam muito fáceis de decifrar, algumas são muito difíceis.
Nesses casos, o hacker ou investigador forense pode empregar maiores recursos de
computação (uma botnet, supercomputador, GPU, ASIC, etc.), ou pode procurar obter a
senha de outras maneiras.
Essas maneiras podem incluir armazenamento inseguro. Além disso, às vezes você não
precisa de uma senha para acessar recursos protegidos por senha. Por exemplo, se
você puder reproduzir um cookie, ID de sessão, um tíquete Kerberos, uma sessão
autenticada ou outro recurso que autentique o usuário após o processo de
autenticação por senha, poderá acessar o recurso protegido por senha sem saber a
senha.
Às vezes, esses ataques podem ser muito mais fáceis do que quebrar uma senha
complexa e longa. Farei um tutorial sobre vários ataques de repetição em um futuro
próximo (procure especificamente pelo meu próximo artigo sobre como roubar o cookie
do Facebook para acessar a conta do Facebook de alguém).
Em geral, as senhas não são armazenadas em texto não criptografado. Como regra, as
senhas são armazenadas como hashes. Hashes são criptografias unidirecionais
exclusivas para uma determinada entrada. Esses sistemas costumam usar MD5 ou SHA1
para fazer o hash das senhas.
Mesa arco-íris
A maioria dos sistemas modernos agora armazena senhas em um hash. Isso significa
que, mesmo que você consiga acessar a área ou arquivo que armazena a senha, o que
você obtém é uma senha criptografada. Uma abordagem para quebrar essa criptografia
é pegar o arquivo de dicionário e fazer o hash de cada palavra e compará-lo com a
senha com hash. Isso consome muito tempo e CPU. Uma abordagem mais rápida é pegar
uma tabela com todas as palavras do dicionário já com hash e comparar o hash do
arquivo de senha com sua lista de hashes. Se houver uma correspondência, agora você
sabe a senha.
Força Bruta
A força bruta é a abordagem mais demorada para quebrar senhas. Deve ser sempre o
seu último recurso. A quebra de senha de força bruta tenta todas as possibilidades
de todas as letras, números, caracteres especiais que podem ser combinados para uma
senha e as tenta. Como você pode esperar, quanto mais potência de computação você
tiver, mais bem-sucedido será com essa abordagem.
Híbrido
Por mais que pensemos que cada um de nós é único, mostramos alguns padrões comuns
de comportamento dentro de nossa espécie. Um desses padrões são as palavras que
escolhemos para senhas. Há um número de listas de palavras que foram compiladas de
senhas comuns. Nos últimos anos, muitos sistemas foram invadidos e senhas
capturadas de milhões de usuários. Ao usar essas senhas já capturadas, é provável
que você encontre pelo menos algumas na rede que está tentando invadir.
Uma das belezas desta ferramenta é sua estratégia de quebra de senha padrão
incorporada. Primeiro, tenta um ataque de dicionário e, se isso falhar, ele tenta
usar palavras de dicionário combinadas, depois tenta um ataque híbrido de palavras
de dicionário com caracteres e números especiais e somente se todos falharem, ele
recorrerá à força bruta.
Ophcrack
Ele quebra hashes LM e NTLM (Windows). Para quebrar o Windows XP, Vista e Windows
7, você pode baixar tabelas arco-íris gratuitas. Você pode baixar o Ophcrack no
SourceForge e obter algumas tabelas de arco-íris gratuitas e premium para o
Ophcrack aqui.
L0phtCrack
Cain e Abel podem ser a ferramenta de cracking de senha mais conhecida do planeta.
Escrito estritamente para Windows, ele pode quebrar vários tipos de hash, incluindo
NTLM, NTLMv2, MD5, wireless, Oracle, MySQL, SQL Server, SHA1, SHA2, Cisco, VoIP e
muitos outros.
Cain e Abel podem quebrar senhas usando um ataque de dicionário, ataque de arco-
íris e força bruta. Um de seus melhores recursos é a capacidade de selecionar o
comprimento da senha e o conjunto de caracteres ao tentar um ataque de força bruta.
E além de ser uma excelente ferramenta de quebra de senhas, também é uma ótima
ferramenta de ARP Poisoning e MiTM.
THC-Hidra
Bruto
O Brutus não é atualizado há algum tempo, mas ainda pode ser útil e, como é de
código aberto, você mesmo pode atualizá-lo. Brutus pode ser baixado aqui.
Aircrack-Ng
Criando um Soft AP
Criando um gêmeo do mal
Criando um AP desonesto
Conduzindo um ataque DOS contra um AP Wi-Fi
Está disponível apenas para Linux e requer um pouco de curva de aprendizado para
dominar, mas você será ricamente recompensado pelo tempo gasto aprendendo. Além
disso, para ser mais eficaz, você precisará usar um cartão sem fio compatível com
aircrack-ng, portanto, verifique sua extensa lista antes de comprar seu cartão.
Você pode encontrar mais informações sobre o aircrack-ng na minha série de hackers
Wi-Fi.
Alguns dos botnets disponíveis em todo o mundo têm mais de um milhão de máquinas e
estão disponíveis para aluguel para quebrar senhas. Se você tiver uma senha que
pode levar um ano para ser quebrada com sua única CPU, um botnet de um milhão de
máquinas pode reduzir esse tempo para aproximadamente 1 milionésimo do tempo, ou 30
segundos!
GPU
GPUs, ou unidades de processamento gráfico, são muito mais poderosas e mais rápidas
que a CPU para renderizar gráficos em seu computador e para quebrar senhas. Temos
algumas ferramentas embutidas no Kali que são especialmente projetadas para usar
GPUs para quebrar senhas, como cudahashcat, oclhashcat e pyrit. Procure os próximos
tutoriais sobre como usar essas ferramentas e a GPU em sua placa de vídeo de última
geração para acelerar a quebra de senha.
ASIC
[1] Placas Bitfury da Black Arrow, [2] processador Butterfly Labs, [3] Inside the
Butterfly Labs Monarch
Black Arrow Software e Butterfly Labs, entre outros, agora estão vendendo esses
dispositivos por preços de até US$ 1.500 por
Muitas vezes, os hackers novos para quebrar senhas estão procurando uma única
ferramenta ou técnica para quebrar senhas, mas infelizmente isso não existe. Isso é
uma sorte para a segurança da rede, no entanto. Cada tipo de senha requer uma
estratégia única adaptada à situação. A situação pode ser o tipo de criptografia
(MD5, SHA1, NTLM, etc.), remoto versus offline, salgado ou não salgado, e assim por
diante. Sua estratégia de quebra de senha deve ser específica para a situação.
Estou assumindo aqui que estamos atrás de mais de uma única senha. Geralmente, a
quebra de senha é um exercício de primeiro capturar os hashes. Em sistemas Windows,
eles estão no arquivo SAM em sistemas locais, LDAP em sistemas de diretório ativo e
/etc/shadow em sistemas Linux e UNIX. Esses hashes são criptografia unidirecional
que são exclusivas para cada entrada de senha (bem, quase todas as entradas de
senha, para ser preciso). Em cada caso, precisamos saber qual esquema de
criptografia está sendo usado para quebrar o hash.
Por exemplo, sistemas Linux e Unix usam MD5 e sistemas Windows modernos usam HMAC-
MD5. Outros sistemas podem usar SHA1, MD4, NTLM, etc. Certifique-se de saber qual
hash está sendo usado no sistema que você está tentando quebrar, caso contrário
você passará horas ou dias sem resultados satisfatórios.
Tudo o que foi dito, John the Ripper tem um detector automático de hash que está
correto cerca de 90% das vezes, mas quando está errado, não há como saber. Em Caim
e Abel, assim como no hashcat, devemos informar à ferramenta que tipo de hash
estamos tentando decifrar.
Aqui podemos ver uma captura de tela dos tipos de hashes que podemos quebrar usando
hashcat e seus valores numéricos.
Além disso, também tentarei forçar todas as senhas numéricas nesta fase. As senhas
numéricas são as mais fáceis de decifrar. Uma senha numérica de 8 caracteres requer
apenas que tentemos 100 milhões de possibilidades, e mesmo uma senha numérica de 12
caracteres requer apenas 1 trilhão de possibilidades. Com hardware poderoso,
podemos fazer isso sem suar a camisa.
Para tentar uma passagem rápida e suja nesses hashes, basta escolher uma lista de
palavras do dicionário com oito caracteres. Percorrer os milhões de palavras dessa
lista geralmente levará apenas algumas horas e provavelmente produzirá uma parte
significativa das senhas.
Sabendo que os humanos tendem a usar esses tipos de senhas, na minha próxima
iteração na lista de hash de senhas, tentarei uma lista de senhas comumente
encontradas. Numerosos sites na web incluem listas de palavras de senhas quebradas
ou capturadas. Além disso, você pode tentar raspar a web para capturar o maior
número possível de senhas.
Nesta iteração, executaremos os hashes restantes por meio de uma lista de palavras
que possui palavras de dicionário mais longas e palavras de dicionário com números.
Os usuários, por serem forçados a alterar as senhas periodicamente, geralmente
apenas adicionam números ao início ou ao final de suas senhas. Algumas de nossas
ferramentas de quebra de senha, como hashcat e John the Ripper, nos permitem usar
regras para aplicar à lista de palavras para combinar palavras, acrescentar e
preceder números, alterar maiúsculas e minúsculas, etc.
Mesmo quando somos deixados com um ataque de força bruta, podemos ser estratégicos
sobre isso. Por exemplo, se soubermos que a política de senha tem no mínimo 8
caracteres, tente forçar bruta com apenas oito caracteres. Isso economizará seu
tempo e provavelmente gerará algumas senhas.
Além disso, você pode escolher seu conjunto de caracteres. Mais uma vez, se
soubermos que a política de senha é maiúscula, minúscula e um número, escolha
apenas os conjuntos de caracteres para força bruta.
Finalmente, alguns crackers de senha como hashcat (procure meu próximo tutorial
sobre hashcat) têm "políticas" embutidas que você pode escolher para tentar a força
bruta. Elas são semelhantes às estratégias e ajudam a moldar seus ataques com base
no protocolo de construção de senhas seguido por uma empresa ou grupo.
Essas regras podem ser usadas em outras ferramentas de quebra de senha, como John
the Ripper.
É importante ter sucesso na quebra de senhas que você siga uma estratégia
sistemática, não importa qual ferramenta você esteja usando, que exija várias
iterações para quebrar a maioria das senhas. Essa estratégia geralmente funciona
desde as senhas mais fáceis de decifrar até as mais difíceis.