Questão de Segurança da Informação — Segurança na Internet — FGV 2024
Segurança da Informação›Seguranç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:
AXSS baseado em DOM;
BXSS refletido;
CXSS armazenado;
DXCS ou Cross Chanel Scripting;
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.
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.