Imagem de fundo

Durante um hackathon de segurança, uma das equipes construiu rapidamente uma funcionali...

Durante um hackathon de segurança, uma das equipes construiu rapidamente uma funcionalidade de comentários para um sistema de compras.


Para permitir o uso de formatação HTML nos comentários, o desenvolvedor implementou o seguinte template:


Imagem associada para resolução da questão


Após algum tempo, um usuário publicou o seguinte texto no conteúdo do comentário:


Imagem associada para resolução da questão


Outros usuários que acessaram a página tiveram transferências não autorizadas de suas contas.


Com base nesse cenário, qual opção explica a falha explorada, indicando o tipo de ataque e como corrigi-la sem perder a possibilidade de exibir algum HTML formatado nos comentários?


A

O ataque é um CSRF, pois o script realiza uma requisição POST autenticada. A correção é ativar o middleware de proteção CSRF e validar o token de cada requisição.


B

O ataque é um XSS, pois o código do comentário é executado no navegador de outros usuários. A correção é filtrar e limpar o HTML permitido (mantendo apenas tags seguras, como <b> ou <i>).


C

O ataque é um XSS, pois o script é executado logo após o envio do comentário. A correção é utilizar o auto-escape com a exibição do comentário realizada pelo código:

<div>{{ ultimo_comentario }}</div>


D

É uma falha de validação de entrada por CSRF, pois o sistema não restringe o conteúdo do comentário. A correção é bloquear qualquer HTML e exibir apenas texto puro.