Escolar Documentos
Profissional Documentos
Cultura Documentos
Abstract: This article describes the usage of some tools and methods of
attacks to perform password cracking. They are, dictionary attacks, brute
force and softwares that perform this type of function, with the need of some
pre-defined settings.
1. Introdução
A cada ano que passa, conseguimos perceber uma necessidade crescente em nos
preocuparmos cada vez mais com a segurança e privacidade da informação. Assim
como as ferramentas para a proteção desses ativos vão sendo criadas e sendo
aperfeiçoadas com o passar do tempo, o mesmo acontece com o outro lado, de pessoas
más intencionadas por diversas motivações, que estão sempre em busca de artifícios e
brechas na segurança para conseguirem se infiltrar nos sistemas, buscando o roubo de
informações, prejudicar a disponibilidade de sistemas, dentre muitos outros.
Neste trabalho iremos nos focar no vetor de ataque do tipo dicionário. É
importante citar que existe uma diferença entre força bruta e ataques de dicionário,
sendo que na força bruta existe uma grande quantidade de chaves possíveis para
verificação de quebra, enquanto no ataque de dicionário se limita apenas as palavras
mais utilizadas. Naturalmente, tornando-o menor em conteúdo e mais demorado do que
a força bruta.
De acordo com o comprimento e complexidade da senha, isso pode levar de
alguns segundos até muitos anos. E para que isso seja feito são usadas diversas
ferramentas e métodos que auxiliam no ataque de brute force.
2. FERRAMENTAS DE ATAQUE
2.1 DICIONÁRIO
Adivinhar a senha de um usuário ou site específico pode levar muito tempo.
Nessa necessidade, surgiu o desenvolvimento de dicionários para agilizar essa quebra de
credenciais. Podendo assim conter listas vazadas de senhas comumente usadas e,
juntando a isso a substituição de caracteres comuns por números, pode se tornar muito
eficaz e rápida uma quebra de credenciais.
Com o ataque de dicionário, é realizado uma sequência de etapas. O programa lê
a hash de um arquivo de senhas e uma palavra do dicionário. Então é feita a hash dessa
palavra e verificado se corresponde a primeira hash obtida. Esses passos são repetidos
até que as hash sejam idênticas.
Uma lista que pode conter milhares, ou até milhões de palavras comumente
utilizadas em senhas de usuários. Abrange muitos tipos de strings, variando em
tamanho, substituição de letras por números ou caracteres especiais. Pode conter uma
lista vazada de senhas mais utilizadas. Essa necessidade de desenvolvimento dos
dicionários surgiu para agilizar a quebra de credencias por atacantes. O uso de
dicionário na tentativa de descobrir senhas pode tornar esse processo mais rápido e
eficaz.
4. ALGORÍTMOS DE HASHING
Agora, citaremos alguns tipos diferentes de algoritmos de hashing.
4.1. MESSAGE DIGEST 5 - MD5
Atualmente, em sua quinta versão, o MD5 é o tipo de hash mais comum e
popular em uso. De forma simples, esse algoritmo recebe alguma informação através de
um input de qualquer tamanho, e gera um output de 128 bits de caracteres aleatórios,
sendo o limite máximo a quantidade de 256 caracteres. Um ponto importante de se
notar, é que o MD5 não é um tipo de encriptação, mas sim como se fosse uma
impressão digital dos dados de entrada fornecidos. Em nossos testes, utilizamos a
ferramenta MD5 para a geração das hashs a serem quebradas pelo John The Ripper.
4.2. SECURE HASH ALGORITHM – SHA-1
Com sua posição ascendente atual, esse algoritmo é provavelmente o substituto
do MD5, após vulnerabilidades começarem a ser encontradas no algoritmo anterior. O
SHA-1, está em sua segunda versão, sendo sua anterior chamada de SHA-0. Podemos
também citar o SHA-2, que é um conjunto de algoritmos de hash, porém o mesmo ainda
não tem tanta popularidade quanto suas versões anteriores. O SHA-1 cria hashs de 160
bits.
4.3. LANMAN
Muito suscetível a ataques de força bruta, este algoritmo da Microsoft, não é
mais utilizado como mecanismo padrão de armazenamento. O Microsoft Lan Manager
já foi utilizado nos sistemas Windows, esse algoritmo utilizava o DES (Data Encryption
Standard) para gerar as hashs.
Referências
K. Marchetti and P. Bodily, "John the Ripper: An Examination and Analysis of the
Popular Hash Cracking Algorithm," 2022 Intermountain Engineering, Technology and
Computing (IETC), 2022, pp. 1-6, doi: 10.1109/IETC54973.2022.9796671.
X. Zheng and J. Jin, "Research for the application and safety of MD5 algorithm in
password authentication," 2012 9th International Conference on Fuzzy Systems and
Knowledge Discovery, 2012, pp. 2216-2219, doi: 10.1109/FSKD.2012.6234010.
M. V. G. Aziz, R. Wijaya, A. S. Prihatmanto and D. Henriyan, "HASH MD5 function
implementation at 8-bit microcontroller," 2013 Joint International Conference on Rural
Information & Communication Technology and Electric-Vehicle Technology (rICT &
ICeV-T), 2013, pp. 1-5, doi: 10.1109/rICT-ICeVT.2013.6741530.
Larry B. de Guzman, Ariel M. Sison, and Ruji P. Medina. “MD5 Secured
Cryptographic Hash Value.”,2018 In Proceedings of the 2018 International Conference
on Machine Learning and Machine Intelligence (MLMI2018). Association for
Computing Machinery, New York, NY, USA, 54–59.
https://doi.org/10.1145/3278312.3278317