Questão
ID 1410910Disciplina: Tecnologia da Informação
Assunto: Injeção SQL (SQL Injection)
Ano: 2022 Banca: UFRJ - Universidade Federal do Rio de Janeiro Órgão: Universidade Federal do Rio de Janeiro
Durante o desenvolvimento de um software, é importante a atenção em relação a quesitos de segurança. Observe o código PHP a seguir:
<?php /**/ \$nome_produto = \$_POST[‘nome_produto’]; \$script = “SELECT produto, preco FROM produtos WHERE produto = ‘\$nome_produto’;”; /**/ ?> |
Supondo que um agente consiga atribuir à variável \$nome_produto a seguinte linha de caracteres:
‘; DELETE FROM produtos; -- |
Ao executar a query, sem tratamento seguro, os registros da tabela produtos deverão ser apagados. Na forma como foi escrito, o desenvolvedor está permitindo que um agente malicioso execute operações danosas em scripts de SQL diretamente no banco de dados. Para evitar esta falha pode ser utilizado o seguinte recurso PHP: