Assinale a alternativa que corresponde a uma boa prática de...

Próximas questões
Com base no mesmo assunto
Q4379709 Segurança da Informação
Assinale a alternativa que corresponde a uma boa prática de programação segura (secure coding) para aplicações web, conforme recomendações do OWASP (Open Web Application Security Project).
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Gabarito: D

Fundamento decisivo: O enunciado pede uma prática recomendada pelo OWASP; o critério decisivo é a correspondência da alternativa D com o item 52 de Authentication and Password Management.

Tema central: Práticas de programação segura
Análise das alternativas
A
Errada
Enviar o identificador de sessão em parâmetros de URL contraria a orientação de gerenciamento de sessões de não expor esse identificador em URLs. O erro está justamente em apresentar sua visibilidade pública como boa prática, quando a recomendação exige evitar essa exposição.
B
Errada
A facilidade de diagnóstico não justifica exibir ao usuário detalhes do sistema, versões e identificadores de sessão. O OWASP recomenda mensagens de erro genéricas ao usuário, acesso restrito aos logs e proteção de informações sensíveis. Isso não significa proibir todo log detalhado: o erro é confundir registro para diagnóstico com divulgação de detalhes internos e dados sensíveis ao usuário.
C
Errada
Na reautenticação, o OWASP recomenda gerar um novo identificador de sessão. A alternativa propõe o procedimento oposto, reutilizando o identificador anterior justamente no evento que exige sua renovação.
D
Certa
A alternativa D aplica a recomendação de informar ao titular da conta a data e a hora de seu último uso, apresentando essa informação no próximo login bem-sucedido. É importante separar o momento da comunicação do evento comunicado: o login em que se apresenta a informação deve ser bem-sucedido, mas o último uso informado pode ter sido bem-sucedido ou malsucedido. Portanto, a recomendação não se restringe a comunicar apenas o último acesso bem-sucedido.
E
Errada
A validação realizada no cliente por JavaScript não substitui a validação no servidor, que é o sistema confiável para essa verificação. Portanto, a alegação de melhor desempenho não autoriza dispensar a validação server side dos dados recebidos. A validação no cliente pode existir, mas não elimina essa exigência.
Pegadinha da questão
As alternativas B e E apresentam conveniências operacionais — diagnóstico mais rápido e melhor desempenho — como justificativas para retirar controles de segurança. A confusão explorada é tratar essas vantagens como autorização para expor informações sensíveis ou dispensar a validação no servidor.
Dica para questões semelhantes
  • Em recomendações sobre autenticação, identifique separadamente o evento que deve ser informado e o momento em que a informação deve ser apresentada. A condição de sucesso do login de apresentação não restringe, por si só, o resultado do uso anterior comunicado.
  • Em questões de gerenciamento de sessões, verifique duas condições distintas: onde o identificador pode ser exposto e em quais eventos ele deve ser renovado. Proteger sua exposição não dispensa cumprir a regra de renovação.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Bom, nas aplicações que desenvolvo, costumo ir na contramão das recomendações da OWASP, principalmente no que diz respeito à alternativa D - "o instante (data e hora) do último uso de uma conta de usuário deve ser reportado a esse usuário em seu próximo login bem-sucedido", que considero completamente desnecessária.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo