Pular para o conteúdo principal

Questão de Segurança da Informação — Práticas de Segurança e Ameaças em Programação — CESPE / CEBRASPE 2024

Segurança da InformaçãoPráticas de Segurança e Ameaças em Programação
Código
ce404070
Banca
CESPE / CEBRASPE
Órgão
BACEN
Ano
2024
Cargo
Ana ( )

Em relação aos principais tipos de ataques a aplicações web e a sua prevenção, julgue o seguinte item.

 

XSS (Cross-site scripting) é um tipo de ataque por meio do qual o atacante explora erros nos códigos de entrada de dados, e a prevenção de ataques XSS requer sanitização das entradas de dados, de maneira a impedir a injeção de códigos maliciosos.

  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoC — Certo

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”.

Cross-Site Scripting (XSS): conceito e prevenção

✅ CERTO. A afirmação está correta: o XSS é um ataque que explora falhas na validação das entradas de dados de uma aplicação web, e a prevenção envolve, entre outras medidas, a sanitização dessas entradas para impedir a injeção de código malicioso. Essa é a definição clássica do ataque, amplamente documentada pelo OWASP e pela literatura de segurança da informação.

O XSS (Cross-Site Scripting) é uma vulnerabilidade de segurança em aplicações web que permite a um atacante injetar scripts maliciosos (geralmente JavaScript) em páginas visualizadas por outros usuários. O nome original, "Cross-Site", vem do fato de que, nos primeiros ataques, o objetivo era roubar dados de um site para usar em outro (cross-site). Hoje, o termo abrange qualquer injeção de conteúdo malicioso em uma página web.

O ataque ocorre quando a aplicação não valida ou não sanitiza adequadamente os dados fornecidos pelo usuário. Esses dados são então incorporados ao HTML da página e interpretados como código pelo navegador da vítima. Por exemplo, um atacante pode inserir um script em um campo de comentário de um fórum; quando outro usuário visualiza o comentário, o script é executado no navegador dele, podendo roubar cookies de sessão, redirecionar para sites maliciosos ou capturar informações digitadas.

Existem três tipos principais de XSS:

  • XSS Persistente (ou armazenado): o código malicioso é armazenado no servidor (por exemplo, em um banco de dados) e executado sempre que a página é acessada.

  • XSS Refletido (ou não persistente): o código malicioso é incluído na URL ou em parâmetros de formulário e refletido na resposta HTTP, sem ser armazenado.

  • XSS baseado em DOM: o ataque ocorre diretamente no Document Object Model (DOM) do navegador, sem que o servidor processe o código malicioso.

A prevenção do XSS envolve uma combinação de técnicas, conforme recomenda o OWASP (Open Web Application Security Project). A principal delas é a sanitização das entradas de dados, que consiste em validar, filtrar e codificar os dados fornecidos pelo usuário antes de exibi-los na página. Isso impede que caracteres especiais, como <, >, &, sejam interpretados como código HTML ou JavaScript. Além disso, a codificação de saída (output encoding) é essencial: os dados devem ser exibidos como texto, não como código. Frameworks modernos, como React e Angular, oferecem mecanismos de escape automático, mas é preciso conhecer suas limitações e usar corretamente as funções de sanitização.

A banca explora aqui um conceito central: a relação entre a vulnerabilidade (falta de validação de entrada) e a medida preventiva (sanitização). A afirmação está em conformidade com o que é ensinado nos principais guias de segurança, como o OWASP Top 10 e o Cheat Sheet de Prevenção de XSS.

XSS (Cross-Site Scripting)
  • 1Conceito
    • Injeção de script malicioso
    • Execução no navegador da vítima
  • 2Tipos
    • Persistente (armazenado no servidor)
    • Refletido (na URL/parâmetros)
    • Baseado em DOM (no navegador)
  • 3Prevenção
    • Sanitização das entradas
    • Codificação de saída
    • Escape automático (frameworks)
LEVEL · soulevel.com.br
NÃO CAIA NESSA!

Para fixar, lembre-se da tríade do XSS: entrada não validada → código injetado → execução no navegador da vítima. Na prova, quando a questão falar em "sanitização de entradas" ou "validação de dados", associe imediatamente à prevenção de injeção de código, seja XSS, SQL Injection ou Command Injection. E cuidado: não confunda XSS com SQL Injection — o XSS ataca o navegador do usuário, enquanto o SQL Injection ataca o banco de dados da aplicação.

Gabarito: letra C (Certo).

Link permanente: /questoes/ce404070