FC ConcursosFC Concursos

Questão FC514962

Certa aplicação web tem uma funcionalidade de busca de usuários por nome, realizada em PHP, conforme os parâmetros a seguir. $ username = $ _GET['username']; $ query = “SELECT * FR

Desenvolvimento Web

CEBRASPE (CESPE) · 2025

Certa aplicação web tem uma funcionalidade de busca de usuários por nome, realizada em PHP, conforme os parâmetros a seguir.

$ username = $ _GET['username']; $ query = “SELECT * FROM users WHERE username = '$ username'“; $ result = mysqli_query($ connection, $ query);

A partir dessas informações, julgue o item subsequente, considerando o que é definido pelo OWASP Top 10 de 2021 no que diz respeito a falhas de aplicação.

 

Na URL a seguir, o uso de -- indica o início de um comentário em SQL, de modo que o restante da consulta é ignorado.

http://prova.com/busca?username=admin'--

Mostrar resposta e comentário

Gabarito

Certo

Comentário do professor

Por que está certo: Na sintaxe SQL padrão, -- inicia um comentário de uma linha. Assim, ao enviar admin'-- como parâmetro, o apóstrofo fecha a string e os dois hífens fazem com que o restante da consulta seja ignorado pelo servidor.

Com o código vulnerável mostrado, a query montada fica semelhante a: SELECT * FROM users WHERE username = 'admin'--' , onde tudo após -- não é executado. Isso permite que um invasor consiga buscar o usuário admin sem validar ou escapar a entrada.

Essa técnica é um caso clássico de SQL injection, catalogado pelo OWASP Top 10 (falha de injeção).

Mitigação: use prepared statements / parameterized queries, valide entradas e evite concatenar diretamente valores de usuário na SQL.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo