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