CVE-2026-12416
فاتورة مولّد <= 1.0.0 - استيلاء غير مصادق عليه على الحساب عبر ضعف التحقق من إعادة تعيين كلمة المرور عبر معامل 'reset_user_id'
- تم النشر
- 24/06/2026
- محدث
- 25/06/2026
- تخصيص CNA
- Wordfence
- الأدلة المرصودة
- 17/08/2026
CVSS الأساسي
nvd · CVSS 3.1
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:Hمنخفض · الثلاثين يومًا القادمة
- المئوية
- 51.1%
- تاريخ الموديل
- 15/10/2026
EPSS هو تقدير إحصائي، وليس يقينًا أو مقياسًا للتأثير. ادمجها مع CVSS وحالة KEV والتعرض وبيئتك.
ملخص
The Invoice Generator plugin for WordPress is vulnerable to Account Takeover via Password Reset in all versions up to, and including, 1.0.0. This is due to the `pravel_invoice_change_password()` function being registered as a nopriv AJAX handler with no nonce verification and no authorization check, and performing a loose equality comparison between the supplied `reset_activation_code` POST parameter and the target user's stored `forgot_email` user meta — a check that trivially evaluates to true (`'' == ''`) for any user who has never initiated a forgot-password request, which applies to administrators under normal conditions. This makes it possible for unauthenticated attackers to supply an arbitrary user ID via the `reset_user_id` POST parameter, bypass the activation code check entirely by omitting `reset_activation_code`, and set the target account's password to an attacker-chosen value, enabling full takeover of any account on the site, including administrator accounts. إضافة Invoice Generator الخاصة بووردبريس معرّضة لثغرة الاستيلاء على الحساب عبر إعادة تعيين كلمة المرور في جميع الإصدارات حتى الإصدار 1.0.0 وما يشمله. ويعود السبب في ذلك إلى أن الدالة `pravel_invoice_change_password()` مُسجَّلة كمعالج AJAX من نوع nopriv دون أي تحقق من nonce ودون أي فحص للتفويض، كما أنها تُجري مقارنة مساواة غير صارمة بين معامل `reset_activation_code` المُرسَل عبر POST وقيمة الحقل المخصص `forgot_email` المخزّنة لدى المستخدم المستهدف — وهو فحص يُقيَّم بسهولة على أنه صحيح (`'' == ''`) لأي مستخدم لم يسبق له أن قدّم طلبًا لاستعادة كلمة المرور، وهو ما ينطبق على المسؤولين في الظروف العادية. وهذا يتيح للمهاجمين غير المصادَق عليهم إرسال معرّف مستخدم عشوائي عبر معامل `reset_user_id` في POST، وتجاوز فحص رمز التفعيل بالكامل عبر حذف `reset_activation_code`، وتعيين كلمة مرور الحساب المستهدف إلى قيمة يختارها المهاجم، مما يتيح الاستيلاء الكامل على أي حساب في الموقع، بما في ذلك حسابات المسؤولين.
المصادر
الاستيلاء على الحساب بدون مصادقة عبر ضعف التحقق من إعادة تعيين كلمة المرور عبر معامل 'reset_user_id' | تصعيد الامتيازات بدون مصادقة عبر ضعف التحقق من إعادة تعيين كلمة المرور عبر 'reset_activation_code' مما يؤدي إلى الاستيلاء على الحساب
الاستخدام المسؤول
استخدم معلومات الثغرات الأمنية فقط على الأنظمة التي تمتلكها أو المرخص لها باختبارها. يرتبط Kitploit ببيانات تعريف البحث العامة ولا يخزن أكواد الاستغلال أو الحمولات الضارة.