Wiki.js is an open source wiki app built on Node.js. Prior to 2.5.313, the users.update GraphQL mutation accepts an arbitrary groups array and applies it directly to the database with no validation of the group IDs supplied. The resolver passes the caller's arguments straight to the model without any ownership check or restriction on which groups can be assigned. A user with manage:users — a permission typically delegated to wiki moderators for account management — can set groups:[1] on their own account to self-assign to the Administrators group. After re-authentication, the fresh JWT carries manage:system, granting full site administrator access in a single mutation call. This vulnerability is fixed in 2.5.313.
Wiki.js versions before 2.5.313 contain a privilege escalation vulnerability in the users.update GraphQL mutation that allows users with manage:users permission to self-assign administrator groups without validation. An attacker can escalate from moderator to full site administrator access by manipulating the groups array parameter.
يحتوي Wiki.js على ثغرة تصعيد امتيازات حرجة في معالج GraphQL users.update الذي يقبل مصفوفة مجموعات تعسفية دون التحقق من صحة معرفات المجموعات. يمكن لأي مستخدم لديه صلاحية manage:users إعادة تعيين نفسه إلى مجموعة المسؤولين والحصول على صلاحيات إدارة النظام الكاملة.
ثغرة في Wiki.js قبل الإصدار 2.5.313 تسمح لمستخدمي إدارة المستخدمين بترقية أنفسهم إلى مسؤولي النظام من خلال معالج GraphQL غير محمي. يمكن للمهاجم الحصول على صلاحيات كاملة للموقع بطلب واحد بدون التحقق من صحة معرفات المجموعات.
Upgrade Wiki.js to version 2.5.313 or later immediately. Implement input validation on the users.update GraphQL mutation to verify group IDs against authorized groups for the requesting user. Restrict the manage:users permission to trusted administrators only and audit existing user group assignments for unauthorized administrator accounts.
قم بترقية Wiki.js إلى الإصدار 2.5.313 أو أحدث فوراً. طبق التحقق من صحة المدخلات على معالج GraphQL users.update للتحقق من معرفات المجموعات. قيد صلاحية manage:users للمسؤولين الموثوقين فقط وتدقيق حسابات المسؤولين غير المصرح بها.