Questão nº 45

Questão de Tecnologia da Informação · FCC TRF4 2019 (nº 45)

FCC2019Analista Judiciário - Área Apoio Especializado - Especialidade Sistemas de Tecnologia da InformaçãoTecnologia da Informação
Gabarito: Cver comentário ↓

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

Resposta comentada

Gabarito Alternativa C

XSS é um ataque onde o criminoso insere código malicioso (como HTML ou JavaScript) em um site; para evitar isso, é preciso transformar caracteres especiais como < (menor que) e > (maior que) em "entidades HTML" (como &lt; e &gt;), para que o navegador os veja como texto comum, e não como parte de um comando.

  • (A) Incorreta: FILTER_SANITIZE_MAGIC_CHARACTERS não é uma constante de filtro válida no PHP.
  • (B) Incorreta: FILTER_SANITIZE_FULL_ENTITY_CHARACTERS não é uma constante de filtro válida no PHP.
  • (C) Correta: Este filtro converte os caracteres HTML especiais mais importantes (<, >, &, ", ') em suas entidades HTML correspondentes (&lt;, &gt;, &amp;, &quot;, &#039;), neutralizando tags e scripts maliciosos, exatamente como pedido para < e >.
  • (D) Incorreta: Embora também converta < e > para entidades, este filtro é mais abrangente (equivalente a htmlspecialchars com ENT_QUOTES | ENT_HTML5), convertendo todos os caracteres aplicáveis para entidades HTML, o que pode ser excessivo para a necessidade específica de neutralizar < e > mencionada na questão. É o distrator mais tentador, pois "full" sugere uma proteção completa, mas SPECIAL_CHARS é o mais direto e preciso para a necessidade de tags HTML.
  • (E) Incorreta: FILTER_SANITIZE_MAGIC_QUOTES foi removida no PHP 5.4.0 e estava relacionada à funcionalidade "magic quotes" (aspas mágicas), que não tem a ver com a conversão de < e > em entidades HTML.

Fonte: FCC TRF4 2019 Analista Judiciário - Área Apoio Especializado - Especialidade Sistemas de Tecnologia da Informação (Caderno Tipo 001). Reproduzida para fins de estudo.

Continue estudando

Estudar é izi

Pratique milhares de questões como esta, de graça, com explicação e gamificação no Quizinho.

Estudar de graça no Quizinho