Questão FC373384
Ataques Cross-Site Scripting (XSS) muitas vezes usam caracteres especiais em campos de formulário para acessar áreas restritas do site. Para evitar esse tipo de ataque, um programa
Desenvolvimento Web
FCC · 2019
Ataques Cross-Site Scripting (XSS) muitas vezes usam caracteres especiais em campos de formulário para acessar áreas
restritas do site. Para evitar esse tipo de ataque, um programador PHP recebeu o login de um usuário, digitado em um campo de
formulário, da seguinte forma.
$login = filter_input(INPUT_POST, 'login', __I__);
Considerando que no campo login do formulário foi digitado <comando>, para que os sinais de < (menor) e > (maior) sejam trocados por suas respectivas referências de nome de entidade, ficando no formato <comando>, a lacuna I deverá ser preenchida corretamente por
- FILTER_SANITIZE_MAGIC_CHARACTERS
- FILTER_SANITIZE_FULL_ENTITY_CHARACTERS
- FILTER_SANITIZE_SPECIAL_CHARS
- FILTER_SANITIZE_FULL_SPECIAL_ENTITIES
- FILTER_SANITIZE_MAGIC_QUOTES
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
FILTER_SANITIZE_SPECIAL_CHARS é um filtro que converte caracteres especiais em suas entidades HTML seguras ao recuperar dados com filter_input.
Na prática, caracteres como <, > e & (e também aspas) passam a ser representados por entidades como < e >, impedindo que o texto seja interpretado como marcação HTML pelo navegador.
Isso reduz o risco de XSS quando o valor do campo é exibido em páginas HTML, pois o navegador mostra o conteúdo literalmente, em vez de executar tags ou scripts inseridos pelo usuário.
Importante: o filtro sinaliza uma sanitização de saída para HTML; não substitui validação de formato nem medidas adicionais de segurança. Use-o sempre que for imprimir dados do usuário em HTML.
Conteúdo do catálogo FC Concursos · Atualizado em