The Tutor LMS – eLearning and online course solution plugin for WordPress is vulnerable to Insecure Direct Object References (IDOR) in all versions up to, and including, 3.9.5. This is due to missing object-level authorization checks in the `course_list_bulk_action()`, `bulk_delete_course()`, and `update_course_status()` functions. This makes it possible for authenticated attackers, with Tutor Instructor-level access and above, to modify or delete arbitrary courses they do not own by manipulating course IDs in bulk action requests.
Tutor LMS WordPress plugin versions up to 3.9.5 contain critical IDOR vulnerabilities in bulk action functions, allowing authenticated instructors to modify or delete courses they don't own. This affects educational institutions and e-learning platforms across Saudi Arabia that rely on this plugin for course management. Immediate patching is essential to prevent unauthorized course manipulation and data loss.
1. IMMEDIATE: Update Tutor LMS plugin to version 3.9.6 or later immediately across all WordPress installations
2. VERIFICATION: Audit course modification logs for unauthorized changes since plugin deployment; review instructor access patterns
3. ACCESS CONTROL: Implement role-based access controls (RBAC) limiting bulk action permissions to administrators only; restrict instructor bulk operations
4. DETECTION: Monitor for suspicious bulk action requests via WordPress audit logs; alert on course deletions/modifications by non-owners
5. COMPENSATING CONTROL: If immediate patching impossible, disable bulk action functionality via plugin settings or code modification
6. BACKUP: Ensure daily course database backups are in place for recovery from unauthorized deletions
7. REVIEW: Audit all instructor accounts for suspicious activity; revoke access for terminated staff immediately
1. فوري: تحديث مكون Tutor LMS إلى الإصدار 3.9.6 أو أحدث فورًا عبر جميع تثبيتات WordPress
2. التحقق: تدقيق سجلات تعديل الدورات للتغييرات غير المصرح بها منذ نشر المكون؛ مراجعة أنماط وصول المدرب
3. التحكم في الوصول: تنفيذ التحكم في الوصول القائم على الأدوار (RBAC) يقيد أذونات الإجراء الجماعي للمسؤولين فقط؛ تقييد عمليات المدرب الجماعية
4. الكشف: مراقبة طلبات الإجراء الجماعي المريبة عبر سجلات تدقيق WordPress؛ التنبيه عند حذف/تعديل الدورات من قبل غير المالكين
5. التحكم التعويضي: إذا كان التصحيح الفوري مستحيلًا، قم بتعطيل وظيفة الإجراء الجماعي عبر إعدادات المكون أو تعديل الكود
6. النسخ الاحتياطية: التأكد من وجود نسخ احتياطية يومية لقاعدة بيانات الدورات للاسترجاع من الحذف غير المصرح
7. المراجعة: تدقيق جميع حسابات المدرب للنشاط المريب؛ إلغاء الوصول للموظفين المنتهية خدمتهم فورًا