Questão de Segurança da Informação — Ataques a Senhas — INSTITUTO AOCP 2024
Segurança da Informação›Ataques a Senhas
Código
qa632724
Banca
INSTITUTO AOCP
Órgão
MGI
Ano
2024
Cargo
Esp ( )
A respeito das rainbow tables em relação a ataques de senha, assinale a alternativa correta.
ASão tabelas hash que contêm senhas criptografadas.
BPermitem adivinhar senhas comuns de maneira eficiente.
CSão utilizadas em ataques de engenharia social.
DSão mais lentas que os ataques de dicionário.
EPodem ser usadas para buscar rapidamente valores de hash e suas senhas correspondentes.
Revelar gabarito e comentário▾
GabaritoE — Podem ser usadas para buscar rapidamente valores de hash e suas senhas correspondentes.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Rainbow Tables: o ataque pré-computado a senhas
Gabarito: letra E. As rainbow tables são estruturas de dados pré-computadas que armazenam pares de valores de hash e suas senhas correspondentes, permitindo que um atacante, ao obter um hash, busque rapidamente a senha original sem precisar recalcular o hash de cada tentativa. Essa é a definição central que a alternativa E espelha corretamente.
Para entender por que a letra E é a correta, é preciso compreender o que são as rainbow tables e como elas se diferenciam de outros métodos de ataque a senhas. Uma rainbow table é, essencialmente, uma tabela de consulta pré-computada (lookup table) que contém uma longa lista de hashes e as senhas que os geraram. O atacante, ao capturar um hash de senha (por exemplo, de um banco de dados comprometido), simplesmente procura esse valor na tabela. Se encontrar, descobre a senha correspondente em uma operação de busca muito rápida, sem precisar executar o algoritmo de hash para cada palavra de um dicionário.
O grande trunfo das rainbow tables é o trade-off entre tempo e espaço. Em vez de calcular o hash de milhões de senhas na hora do ataque (como faz o ataque de dicionário), o atacante gasta um tempo considerável uma única vez para pré-computar a tabela. Depois, cada ataque individual se torna extremamente rápido, pois é apenas uma busca em uma estrutura de dados otimizada. É por isso que a alternativa D, que afirma que são mais lentas que os ataques de dicionário, está incorreta: na prática, elas são muito mais rápidas na fase de execução do ataque, justamente por já terem o trabalho computacional feito antecipadamente.
A principal defesa contra rainbow tables é o uso de sal (salt). O sal é um valor aleatório adicionado à senha antes de calcular o hash, fazendo com que senhas idênticas gerem hashes diferentes. Com o sal, a rainbow table teria que conter o hash pré-computado de "sal + senha" para cada combinação possível de sal, o que torna o tamanho da tabela proibitivamente grande e inviabiliza o ataque. É por isso que sistemas modernos de armazenamento de senhas utilizam sal, tornando as rainbow tables ineficazes.
Agora, vamos analisar cada alternativa em detalhe, identificando o erro específico de cada uma e a razão pela qual a letra E é a única correta.
Rainbow tables: O que é (Tabela pré-computada, Pares (hash, senha), Busca rápida do hash); Vantagem (Trade-off tempo × espaço, Pré-computação única, Ataque individual rápido); Defesa (Sal (salt), Hash = sal + senha, Inviabiliza a tabela); Comparação com outros ataques (Dicionário: calcula hash em tempo real, Força bruta: tenta todas as combinações, Engenharia social: explora o fator humano)
Alternativa A — ❌ Incorreta
A alternativa afirma que rainbow tables são "tabelas hash que contêm senhas criptografadas". O erro está na palavra criptografadas. As rainbow tables contêm valores de hash (digests) das senhas, não senhas criptografadas. Criptografia é um processo reversível (com a chave correta, é possível obter o texto original), enquanto hash é uma função unidirecional, ou seja, não é possível reverter o hash para obter a senha original — por isso a necessidade da tabela de consulta. A tabela armazena o par (hash, senha) para permitir a busca reversa.
Alternativa B — ❌ Incorreta
A alternativa afirma que rainbow tables "permitem adivinhar senhas comuns de maneira eficiente". O erro está na palavra adivinhar. As rainbow tables não adivinham senhas; elas revelam senhas a partir de seus hashes. O atacante já possui o hash (obtido, por exemplo, de um banco de dados comprometido) e busca na tabela a senha correspondente. Não há processo de adivinhação ou tentativa; é uma busca direta em uma estrutura pré-computada. A eficiência está em encontrar a senha rapidamente, não em adivinhá-la.
Alternativa C — ❌ Incorreta
A alternativa afirma que rainbow tables "são utilizadas em ataques de engenharia social". Isso é um erro conceitual grave. Engenharia social é uma técnica que explora o fator humano, manipulando pessoas para obter informações confidenciais, como senhas, por meio de persuasão, engano ou confiança. Rainbow tables são uma técnica técnica, puramente computacional, que explora a fragilidade de sistemas de armazenamento de senhas sem sal. Não há nenhuma relação entre as duas: uma ataca pessoas, a outra ataca sistemas.
Alternativa D — ❌ Incorreta
A alternativa afirma que rainbow tables "são mais lentas que os ataques de dicionário". Isso é o oposto da verdade. O ataque de dicionário calcula o hash de cada palavra da lista em tempo real, o que é computacionalmente caro. A rainbow table, por outro lado, já tem os hashes pré-computados; o ataque se resume a uma busca na tabela, que é muito mais rápida. A tabela é uma otimização que troca tempo de preparação por velocidade de execução. Portanto, na fase de ataque, as rainbow tables são muito mais rápidas que os ataques de dicionário.
Alternativa E — ✅ Correta ⟵ GABARITO
A alternativa afirma que rainbow tables "podem ser usadas para buscar rapidamente valores de hash e suas senhas correspondentes". Esta é a definição precisa e completa do que é uma rainbow table. Ela é uma estrutura de dados pré-computada que armazena pares de (hash, senha), permitindo que, dado um hash, o atacante encontre a senha correspondente em uma operação de busca rápida. É exatamente essa a função e a vantagem dessa técnica de ataque.
NÃO CAIA NESSA!
A banca explora a confusão entre os conceitos de hash e criptografia. Hash é unidirecional (não reversível), enquanto criptografia é reversível com a chave. A alternativa A cai nessa armadilha ao dizer "senhas criptografadas". Além disso, a alternativa B troca "revelar" por "adivinhar", e a D inverte a relação de velocidade entre rainbow tables e ataque de dicionário. Fique atento a esses detalhes terminológicos.
PEGA ESSA DICA!
Para diferenciar os ataques a senhas, lembre-se: dicionário calcula hashes em tempo real; força bruta tenta todas as combinações; rainbow table usa tabela pré-computada para busca rápida; engenharia social explora o fator humano. A defesa contra rainbow tables é o uso de sal.