Questão nº 53

Questão de Tecnologia da Informação · FGV TCE-TO 2022 (nº 53)

FGV2022Analista Técnico - Tecnologia da InformaçãoTecnologia da Informação
Gabarito: Cver comentário ↓

As credenciais de acesso dos usuários de um aplicativo são armazenadas em um banco de dados e são utilizadas unicamente para acesso às funcionalidades do aplicativo. A equipe de desenvolvimento definiu como requisito não funcional que o sistema deve evitar que as senhas sejam obtidas por um invasor mesmo que o aplicativo ou banco de dados esteja comprometido.
Para implementar o requisito não funcional, um modo de proteger as senhas dos usuários é:

Resposta comentada

Gabarito Alternativa C

Para proteger senhas em um banco de dados, a prática segura é transformá-las de forma irreversível antes de armazenar, de modo que, mesmo que os dados sejam roubados, a senha original não possa ser recuperada. Isso é feito usando funções hash combinadas com salt.

  • (A) Incorreta: Ocultar o algoritmo (segurança por obscuridade) não é uma prática de segurança eficaz. Algoritmos de segurança devem ser públicos e amplamente testados para serem considerados robustos.
  • (B) Incorreta: Cifrar (criptografar) senhas, seja com chaves assimétricas ou simétricas, implica que elas podem ser decifradas (descriptografadas). Se o sistema for comprometido e o invasor obtiver a chave de decifração, todas as senhas poderão ser recuperadas, violando o requisito.
  • (C) Correta: Utilizar um algoritmo hash com salt é a abordagem padrão e segura. O hash é uma função unidirecional (não reversível), o que significa que a senha original não pode ser obtida a partir do seu hash. O salt (um valor aleatório único adicionado a cada senha antes do hash) protege contra ataques de tabelas arco-íris e torna cada hash único, mesmo para senhas iguais.
  • (D) Incorreta: Criar um algoritmo próprio ("não invente sua própria criptografia") é extremamente perigoso. É muito difícil desenvolver um algoritmo criptográfico seguro que resista a ataques, e a maioria das tentativas resulta em vulnerabilidades.
  • (E) Incorreta: Assim como na alternativa B, cifrar (criptografar) senhas com uma chave simétrica significa que elas podem ser decifradas. Se o invasor obtiver a chave simétrica, todas as senhas podem ser recuperadas, falhando em cumprir o requisito de não permitir que as senhas sejam obtidas. A armadilha aqui é que "cifrar" soa seguro, mas para senhas, a necessidade é de uma transformação irreversível (hash), não reversível (cifra).

Fonte: FGV TCE-TO 2022 Analista Técnico - 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