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-87796 — Pacote de reprodução e script PoC para CVE-2026-87796, um RCE de upload arbitrário de arquivos não autenticado no Multi Uploader for Gravity Forms <= 1.1.9, com um laboratório Docker em loopback. | Kitploit
Ferramentas/GitHubGitHub/abraxas/cve-2026-87796
Análise de VulnerabilidadesExploraçãoExploração de Aplicações WebSegurança WebTestes de PenetraçãoPapers e PesquisaAprendizado e EducaçãoDesenvolvimento de PayloadsLabs e Prática
GitHubabraxas/cve-2026-87796

CVE-2026-87796

Pacote de reprodução e script PoC para CVE-2026-87796, um RCE de upload arbitrário de arquivos não autenticado no Multi Uploader for Gravity Forms <= 1.1.9, com um laboratório Docker em loopback.

há 4h 28mAinda não revisado
Ver Repositório

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

Abraxas Labs — CVE-2026-87796

abraxaslabs.tech  ·  github.com/abraxas  ·  @abraxas_null  ·  CVE-2026-87796

CVE-2026-87796

Multi Uploader for Gravity Forms 1.1.9 — sh1zen

O plugin Multi Uploader for Gravity Forms para WordPress é vulnerável a Upload Arbitrário de Arquivos em todas as versões até, e incluindo, a 1.1.9 através da função move_file. Isso se deve à validação insuficiente do tipo de arquivo durante o tratamento de upload em partes (chunked). Isso possibilita que atacantes não autenticados façam upload de arquivos arbitrários no servidor do site afetado, o que pode tornar possível a execução remota de código.

CVECVE-2026-87796 · CVE.org
CWECWE-434
CVSSCrítico: 9.8 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
ProdutoMulti Uploader for Gravity Forms
Afetadotodas as versões até 1.1.9 (inclusive)
Corrigidopatch do fornecedor — veja as referências
Autenticaçãonenhuma (veja o mapa do código-fonte)
Labapenas 127.0.0.1 · pacote de divulgação para fornecedor/cliente, não é um scanner

Aviso (do mapa do código-fonte)

O aviso nomeia move_file. Esse é um método PHP privado, não um action= HTTP. A ação HTTP é gfmu-plupload-submit. Chunked vs não-chunked é REQUEST[chunks]>1. Nomes de funções PHP não são action= do admin-ajax.


Entrada

  • Método: POST
  • Caminho: /wp-admin/admin-ajax.php
  • Roteador: wp_ajax_nopriv_gfmu-plupload-submit → GFMUHandlePluploader::plupload_ajax_submit. O campo nonce é REQUEST[nonce] para a ação gfmu-upload-nonce. Não invente uma ação ajax diferente.
  • Notas: CVE-2026-87796: handleUpload em partes (REQUEST chunks>1) copia o arquivo montado com move_file ANTES de validateUploadedFile. O não-chunked valida primeiro. Sem um campo, enable_chunked é false e toBytes(ini 2M) < sizeLimit 10mb retorna 'try activate chunking' antes de qualquer escrita. O stub de lab RGFormsModel::get_field retorna um campo multi-uploader com chunk_size=2mb para que essa verificação seja ignorada. Envie currentFormID=1 e currentFieldID=1. Descubra o nonce na página de slug gfmu-lab-nonce. Testemunhe GET /wp-content/uploads/gfmu-uploads-tmp/poc_witness.php contém POC_WITNESS_87796 (GIF89a + echo, não um shell). Dois POSTs de partes e então GET.

Cadeia de chamadas

  • POST /wp-admin/admin-ajax.php action=gfmu-plupload-submit (nopriv, GFMUAddon.class.php:125)
  • GFMUHandlePluploader::plupload_ajax_submit nonce gfmu-upload-nonce (GFMUHandlePluploader.class.php:257-262)
  • GFMU_FileUploader::handleUpload chunks&gt;1 (GFMU_FileUploader.php:231-319)
  • move_file copia e então unlink tmp (GFMU_FileUploader.php:319, 545-560)
  • validateUploadedFile somente DEPOIS que o arquivo já está em $target (322) — ao contrário do não-chunked que valida primeiro (375)
  • GET /wp-content/uploads/gfmu-uploads-tmp/&lt;name&gt; para POC_WITNESS_87796

Pré-condições do lab

  • WordPress com gf-multi-uploader 1.1.9 ativo
  • Stub GF do lab como mu-plugin para que GFForms exista e o AJAX nopriv seja registrado
  • Página pública de slug gfmu-lab-nonce com GFMU_NONCE= para uid 0
  • Não envie currentFormID (não há formulários reais do Gravity Forms)

Testemunho

O GET HTTP do arquivo enviado retorna a string única POC_WITNESS_87796. JSON result=success mais esse GET é SUCESSO. HTML do tema, admin-ajax 0, ou Server error. Falha de nonce não é isso.

Não é sucesso

  • HTML genérico 200 hello world
  • admin-ajax 400 corpo 0
  • result error / Server error. nonce
  • extensão inválida sem um arquivo que ainda faça GET do testemunho
  • um reverse shell ou conexão de saída
  • enviar um jpg/png permitido que não seja o sink de tipo arbitrário

Patch / remediação

Faça isto primeiro: Aplique o patch do fornecedor para o Multi Uploader for Gravity Forms. Veja as referências.

Verifique após a atualização

  • Execute novamente CVE-2026-87796-Abraxas-Labs.py contra a build corrigida: o testemunho mapeado não deve aparecer.
  • Confirme o aviso do fornecedor / changeset na árvore implantada (veja as referências).
  • Uma assinatura de WAF é atraso, não um patch.

Se você não puder atualizar imediatamente

  • Desative ou isole o componente afetado.
  • Procure pela condição de testemunho em produção (novos usuários privilegiados, arquivos inesperados, linhas injetadas — o que o mapa deste CVE nomear).

Reprodução (lab autorizado)

Alvo apenas http://127.0.0.1:8088 (ou o loopback que você vinculou). Não aponte este script para a internet.

root@kitploit:~
python3 CVE-2026-87796-Abraxas-Labs.py

Sucesso é o testemunho acima no corpo da resposta. HTML 200 genérico não é isso.


Imagens do lab

Stack de loopback usada para reproduzir. Imagens oficiais, a menos que um Dockerfile nesta pasta faça build a partir do código-fonte.

  • lab/docker-compose.yml
  • lab/docker-compose.override.yml
  • lab/Dockerfile
root@kitploit:~
cd lab
docker compose up --force-recreate

Vincule a árvore do produto vulnerável ao lado do Compose se o YAML montar um diretório local (zip do plugin / tag de código-fonte da tabela de versões). Não publique nada exceto 127.0.0.1.


Referências

  • CVE-2026-87796 · NVD

  • CVE-2026-87796 · CVE.org

  • plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/GFMUAddon.class.php#L125

  • plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMUHandlePluploader.class.php#L257

  • plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMU_FileUploader.php#L319

  • plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMU_FileUploader.php#L322

  • plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMU_FileUploader.php#L560

  • www.wordfence.com/threat-intel/vulnerabilities/id/47337bc1-fa3d-470c-9524-859295261017?source=cve

  • github.com/advisories/GHSA-h7vp-g8q2-89c8

  • nvd.nist.gov/vuln/detail/CVE-2026-87796

  • Diretório de plugins: gf-multi-uploader

  • Navegador Trac: plugins.trac.wordpress.org/gf-multi-uploader

  • Tags SVN: plugins.svn.wordpress.org/gf-multi-uploader

  • Abraxas Labs: abraxaslabs.tech · github.com/abraxas · @abraxas_null


Registros (estruturados)

root@kitploit:~
# CVE-2026-87796  (structured records)

- input: `https://nvd.nist.gov/vuln/detail/CVE-2026-87796`
- CWE: CWE-434
- published: 2026-09-17T05:17:02.123

## NVD description

The Multi Uploader for Gravity Forms plugin for WordPress is vulnerable to Arbitrary File Upload in all versions up to, and including, 1.1.9 via the move_file function. This is due to insufficient file type validation during chunked upload handling. This makes it possible for unauthenticated attackers to upload arbitrary files on the affected site's server which may make remote code execution possible.

## MITRE description

The Multi Uploader for Gravity Forms plugin for WordPress is vulnerable to Arbitrary File Upload in all versions up to, and including, 1.1.9 via the move_file function. This is due to insufficient file type validation during chunked upload handling. This makes it possible for unauthenticated attackers to upload arbitrary files on the affected site's server which may make remote code execution possible.

## Affected

- sh1zen Multi Uploader for Gravity Forms 0 affected

## References (JSON sources only)

- https://plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/GFMUAddon.class.php#L125
- https://plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMUHandlePluploader.class.php#L257
- https://plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMU_FileUploader.php#L319
- https://plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMU_FileUploader.php#L322
- https://plugins.trac.wordpress.org/browser/gf-multi-uploader/tags/1.1.9/inc/GFMU_FileUploader.php#L560
- https://www.wordfence.com/threat-intel/vulnerabilities/id/47337bc1-fa3d-470c-9524-859295261017?source=cve
- https://github.com/advisories/GHSA-h7vp-g8q2-89c8
- https://nvd.nist.gov/vuln/detail/CVE-2026-87796

## GitHub advisory

The Multi Uploader for Gravity Forms plugin for WordPress is vulnerable to Arbitrary File Upload...

The Multi Uploader for Gravity Forms plugin for WordPress is vulnerable to Arbitrary File Upload in all versions up to, and including, 1.1.9 via the move_file function. This is due to insufficient file type validation during chunked upload handling. This makes it possible for unauthenticated attackers to upload arbitrary files on the affected site's server which may make remote code execution possible.

Isenção de responsabilidade

Este pacote é para o fornecedor, o proprietário do site e labs licenciados. O script se comunica com 127.0.0.1. Usá-lo contra sistemas que você não possui não é autorizado pela Abraxas Labs. Sem garantia.

abraxaslabs.tech · github.com/abraxas · @abraxas_null

Baixar ferramenta