Pular para o conteúdo principal

Questão de Segurança da Informação — Segurança na Internet — FGV 2024

Segurança da InformaçãoSegurança na Internet
Código
fg077010
Banca
FGV
Órgão
CGE-PB
Ano
2024
Nível
Superior
Cargo
Auditor de Contas Públicas - Auditoria de Tecnologia da Informação
O Cross-Site-Scripting, também conhecido como (XSS), é um dos defeitos de segurança mais comumente encontrados em aplicações web, permitindo utilizar uma aplicação vulnerável para transportar código malicioso até o navegador de outro usuário. Dependendo de como o código malicioso é transportado até o navegador da vítima e do local em que a vulnerabilidade ocorre (no servidor ou no cliente), um XSS pode ser classificado de vários tipos.O tipo de XSS que o código malicioso é enviado na URL ou no cabeçalho HTTP, como parte da requisição, explorando um parâmetro que é exibido sem tratamento na página resultante, é o:
  1. AXSS baseado em DOM;
  2. BXSS refletido;
  3. CXSS armazenado;
  4. DXCS ou Cross Chanel Scripting;
  5. EXSS baseado em CSRF.
Revelar gabarito e comentário

GabaritoB — XSS refletido;

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

XSS (Cross-Site Scripting) - Tipos

Gabarito: letra B. O tipo de XSS descrito — código malicioso enviado na URL ou cabeçalho HTTP como parte da requisição, explorando um parâmetro não tratado na página resultante — é o XSS refletido (ou non-persistent). Nesse ataque, o payload é refletido imediatamente na resposta do servidor, sem ser armazenado.

A banca cobra a distinção entre as três categorias principais de XSS:

  • Refletido: o código está na requisição (URL, cabeçalho) e é refletido na resposta.

  • Armazenado (persistente): o código fica armazenado no servidor (ex.: banco de dados) e é servido a todos os usuários.

  • DOM-based: a vulnerabilidade ocorre no lado do cliente, manipulando o DOM sem envio ao servidor.

Tipo de XSS

Local do código malicioso

Persistência

Exemplo de ataque

Refletido

Na requisição (URL, cabeçalho HTTP)

Não persistente (não armazenado)

http://site.com/pesquisa?q=<script>alert('XSS')</script>

Armazenado (Stored)

No servidor (banco de dados, arquivo)

Persistente

Comentário em fórum com script malicioso

DOM-based

No lado do cliente (manipulação do DOM)

Não persistente (client-side)

Script que altera o DOM sem envio ao servidor

1Refletido (non-persistent)
Payload na requisição (URL/cabeçalho)
Refletido na resposta
Não armazenado
2Armazenado (stored/persistente)
Payload no servidor (banco/dados)
Servido a todos os usuários
3DOM-based
Vulnerabilidade no cliente
Manipula o DOM
Sem envio ao servidor
XSS (Cross-Site Scripting)
LEVELsoulevel.com.br
XSS (Cross-Site Scripting): Refletido (non-persistent) (Payload na requisição (URL/cabeçalho), Refletido na resposta, Não armazenado); Armazenado (stored/persistente) (Payload no servidor (banco/dados), Servido a todos os usuários); DOM-based (Vulnerabilidade no cliente, Manipula o DOM, Sem envio ao servidor)

Alternativa A — ❌ Incorreta

XSS baseado em DOM explora o ambiente do navegador via JavaScript client-side, sem necessariamente enviar o payload na URL ou cabeçalho HTTP ao servidor. A descrição do enunciado fala de parâmetro na requisição, que é processado pelo servidor — típico de refletido.

Alternativa B — ✅ Correta ⟵ GABARITO

XSS refletido: o atacante insere o código malicioso em uma URL ou cabeçalho HTTP; ao ser enviado ao servidor vulnerável, este reflete o parâmetro não sanitizado na resposta, executando o script no navegador da vítima. Exemplo clássico: http://site.com/pesquisa?q=<script>alert('XSS')</script>.

Alternativa C — ❌ Incorreta

XSS armazenado (stored) persiste o código no servidor (banco de dados, arquivo) e é exibido a todos os visitantes. O enunciado descreve envio na requisição, não armazenamento prévio.

Alternativa D — ❌ Incorreta

XCS ou Cross Channel Scripting não é uma classificação padrão de XSS (pode ser confundido com ataques entre canais diferentes). Não se aplica.

Alternativa E — ❌ Incorreta

XSS baseado em CSRF mistura conceitos: CSRF (Cross-Site Request Forgery) é outro tipo de ataque, não uma variante de XSS. Não corresponde à descrição.

PEGA ESSA DICA!

Na prova, para identificar o tipo de XSS, pergunte-se: O payload está armazenado no servidor? Se sim → Stored. O payload está na própria requisição e é refletido na resposta? → Reflected. O ataque ocorre totalmente no navegador sem envio ao servidor? → DOM-based.

Gabarito: letra B.

Link permanente: /questoes/fg077010