Digite para filtrar os verbetes do Glossário.

    Redes e segurança · Formação DevOps

    O que é SQL injection?

    SQL injection ocorre quando a entrada do usuário altera a consulta ao banco. Entenda o ataque, a parametrização e como conferir o código e o privilégio.

    Também chamado de: injeção de SQL, SQLi

    O que é SQL injection

    SQL injection acontece quando a entrada do usuário altera a consulta enviada ao banco. O ataque explora a concatenação de texto: o valor recebido entra no comando como se fosse estrutura.

    O efeito depende do privilégio da conexão. Uma consulta de leitura pode expor registros, e uma conexão com permissão de escrita pode alterar ou apagar tabelas.

    Como o ataque funciona

    Uma tela de login monta a consulta com o nome digitado. Ao inserir uma sequência que fecha a condição e acrescenta outra, o atacante muda o que o banco executa.

    O mesmo padrão aparece em filtros, buscas e parâmetros de URL. Qualquer lugar que junte texto com valor sem parametrização repete a condição.

    A correção é parametrizar

    A consulta parametrizada separa o comando do valor. O banco recebe a estrutura pronta e trata a entrada como informação, não como parte da instrução.

    A validação de entrada complementa a parametrização. Também vale limitar o privilégio da conexão da aplicação, para que uma falha não alcance o restante do banco.

    Exemplo

    Como conferir

    Procure concatenação de texto nas consultas e confira se o valor entra como parâmetro. Revise o privilégio do usuário do banco e teste a entrada em ambiente controlado.

    O WAF registra tentativas conhecidas e permite identificar varredura. A correção continua no código, e o banco de dados precisa de uma conexão com o menor privilégio possível.

    Dúvidas frequentes

    Perguntas frequentes sobre SQL injection

    Escapar aspas resolve a injeção de SQL?
    Contribui, mas não substitui a consulta parametrizada. A concatenação de texto continua criando caminhos para a entrada alterar o comando.
    O WAF impede a injeção?
    O WAF cobre padrões conhecidos e serve como camada extra. A correção precisa estar na consulta, porque uma variação do ataque pode passar pela assinatura.
    ORMs eliminam o problema?
    Não. O ORM oferece parametrização, mas a consulta montada com texto e a ordem de execução ainda podem abrir a falha.
    Como provar que a falha existe?
    Use um ambiente de teste e uma entrada controlada que altere a consulta sem destruir informação. Registre a consulta executada e a resposta obtida.

    Para continuar

    Recursos relacionados

    Aplicação na formação

    Formação DevOps

    Na Formação DevOps, a injeção de SQL aparece na revisão da aplicação e na camada de validação antes do banco.

    Conhecer a formação
    Capa da Formação DevOps

    Fontes consultadas

    Referências deste verbete

    Este verbete ajudou você?

    Planos Promovaweb

    Tire seus projetos do papel

    O Plano Martech cobre automação e atendimento. O Plano IA Makers acrescenta desenvolvimento com IA, enquanto o Plano Founders trata de gestão de negócios. Todos são anuais.

    Plano Martech

    Para conectar automação, marketing e atendimento com infraestrutura própria.

    R$ 897

    R$ 597/ano

    • Grade de automação, atendimento, marketing e análise de indicadores
    • Instalador Exclusivo Promovaweb
    • n8n, Evolution API, Chatwoot e Mautic
    • Trilha DevOps incluída
    • Encontros ao vivo (terça e quinta)
    • Comunidade e acompanhamento
    Conhecer o plano

    Plano Founders

    Plano anual para fazer um projeto de tecnologia avançar, com 90 dias de mentoria intensiva. R$ 1.997 à vista ou até 10x de R$ 219 no cartão.

    R$ 1.997/ano

    • 12 meses de acesso ao Founders
    • 90 dias de mentoria intensiva, um encontro por dia útil
    • Dia de conteúdo (terça e quinta) e War Room (segunda, quarta e sexta)
    • Encontro semanal em grupo após a fase intensiva
    • Formação Vibe Coding incluída no plano anual
    • Consultoria individual de até duas horas (bônus)
    Conhecer o plano