Questão nº 33

Questão de Tecnologia da Informação · FCC TRT23 2022 (nº 33)

FCC2022Analista Judiciário - Área Apoio Especializado - Especialidade Tecnologia da InformaçãoTecnologia da Informação
Gabarito: Dver comentário ↓

Considere as situações simplificadas abaixo (`||` indica concatenação).
Algoritmo 1: utiliza uma função hash com poucos bits sobre o bloco de dados que será enviado e uma chave secreta que é compartilhada. O bloco de dados e o hash é enviado ao receptor. O receptor anexa a mesma chave secreta compartilhada ao bloco de dados e calcula a mesma função hash. Mas ocorre colisão na função hash e duas mensagens diferentes resultam como iguais... alguém explora essa vulnerabilidade e modifica os dados, mesmo sem saber a chave, e os entrega ao receptor, que os recebe achando serem os legítimos. Funciona assim:
`H(chave || dados1) = H(chave || dados2)`
Algoritmo 2: funções hash mais avançadas são utilizadas e novos critérios de segurança são adicionados. Isso resulta que nenhum ataque conhecido permite que um invasor modifique os dados e tenha o mesmo valor sem conhecer os valores das chave1 e chave2 (pública e secreta). Funciona assim:
`HNovo = H(chave1 || H(chave2 || dados))`
As situações que envolvem os algoritmos 1 e 2 correspondem, correta e respectivamente, a

Resposta comentada

Gabarito Alternativa D

A autenticação de mensagens garante que uma mensagem não foi alterada (integridade) e que veio de uma fonte autêntica (autenticidade), usando uma chave secreta compartilhada. MAC (Message Authentication Code) é um código gerado para isso, e HMAC (Hashed Message Authentication Code) é uma construção específica e mais robusta de MAC que usa funções hash criptográficas.

  • (A) Incorreta: A alternativa inverte a ordem e associa TLS a um MAC genérico e SSL a HMAC. TLS é o protocolo mais moderno e seguro, que utiliza HMAC. SSL é o predecessor e, embora também usasse MACs (incluindo HMACs), a descrição do Algoritmo 1 (vulnerável) se encaixa melhor com a ideia de um MAC mais simples ou com vulnerabilidades históricas em SSL, enquanto o Algoritmo 2 (seguro) se alinha com HMAC em TLS.
  • (B) Incorreta: MD5 e SHA-1 são nomes de funções hash, não dos algoritmos de autenticação MAC/HMAC em si. Embora SSL e TLS utilizem essas funções hash dentro de suas construções de MAC/HMAC (como HMAC-MD5 ou HMAC-SHA1), a alternativa não descreve os algoritmos de autenticação, mas sim as funções hash. Além disso, MD5 é conhecido por ser inseguro para fins criptográficos.
  • (C) Incorreta: HTTPS e HTTP são protocolos de aplicação (Hypertext Transfer Protocol), sendo HTTPS a versão segura (HTTP sobre SSL/TLS). Eles não são algoritmos de autenticação de mensagens como MAC ou HMAC.
  • (D) Correta:
    • Algoritmo 1 (SSL/MAC): A descrição H(chave || dados) é uma construção ingênua de MAC. Essa construção é conhecida por ser vulnerável a ataques de extensão de comprimento (length extension attacks) se a função hash for do tipo Merkle-Damgård (como MD5 ou SHA-1), mesmo que a função hash não tenha colisões diretas. O problema simplifica, mencionando "colisão na função hash", o que torna o ataque ainda mais direto. SSL (Secure Sockets Layer) é um protocolo mais antigo que utilizava MACs, e algumas de suas implementações ou versões (especialmente as mais antigas) foram de fato suscetíveis a vulnerabilidades ou usavam construções de MAC menos robustas (como MACs baseados em MD5 ou SHA-1 sem a estrutura HMAC adequada, ou com problemas de padding). Portanto, associar essa construção vulnerável de MAC ao SSL é apropriado no contexto de uma evolução de segurança.
    • Algoritmo 2 (TLS/HMAC): A estrutura H(chave1 || H(chave2 || dados)) é a definição fundamental do HMAC (Hashed Message Authentication Code). HMAC foi especificamente projetado para superar as fraquezas de construções ingênuas de MAC (como a do Algoritmo 1), oferecendo garantias de segurança muito mais fortes. TLS (Transport Layer Security) é o sucessor moderno e seguro do SSL e exige o uso de HMAC para a autenticação de mensagens, sendo considerado o padrão ouro para essa finalidade. A associação de TLS com HMAC é, portanto, precisa e reflete a evolução e a segurança aprimorada.
  • (E) Incorreta: Semelhante à alternativa C, TLS/HTTP e TLS/HTTPS são combinações de protocolos, não algoritmos de autenticação de mensagens. TLS é o protocolo de segurança subjacente, e HTTP é o protocolo de aplicação.

Fonte: FCC TRT23 2022 Analista Judiciário - Área Apoio Especializado - Especialidade Tecnologia da Informação (Caderno Tipo 1). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho