The XML grade import functionality (which allows setting or overwriting of student grades) did not include the necessary token to prevent a CSRF risk.
Moodle 5.0.2 5.0 is supported
Released 11 Aug 2025. The current 5.0 release is 5.0.10, published 14 Sep 2026.
Every one of them is fixed in 5.0.10, the current 5.0 release, 8 releases ahead of you. Upgrading within the branch is a minor update with no feature changes.
An incorrect capability check in a grade web service allowed students to access profile information of other students enrolled in the same course, which they would not otherwise have access to.
An SQL injection risk was identified in a question bank web service.
Incorrect handling of IPv4-mapped IPv6 addresses could allow bypassing of some blocked hosts, resulting in an SSRF risk.
User profile descriptions for authenticated users posed a denial of service risk due to the absence of a defined maximum length.
Insufficient capability checks in the Assignment module's marker allocation functionality allowed users without the required capability to allocate markers to submissions.
The regrade action in the quiz overview report did not include the necessary token to prevent a CSRF risk.
The grade item ID number editing functionality did not include the necessary token to prevent a CSRF risk and also lacked sufficient output sanitizing to prevent an XSS risk.
Additional checks were required to ensure users with the capability to delete comments can only do so in the contexts where they have the permission.
A remote code execution risk was identified in the admin presets import feature. Note: This feature is only available to site administrators.
An arbitrary file read risk was identified in the backup restore functionality.
A flaw in email-based multi-factor authentication made it possible for a user to bypass another user's MFA token check if using the email factor. Note: Valid login credentials (such as username and password) were still required to log into the account.
An arbitrary file read risk was identified in the Database Activity module's import feature.
A remote code execution risk was identified in Moodle's Google Drive repository plugin.
An SQL injection risk was identified in the "external database" authentication plugin (auth_db). Note: This only affected sites with the auth_db authentication plugin enabled.
Rendering of TeX content with mimetex in the formula editor required execution time limitations to prevent a denial of service risk.
Additional sanitizing was required on a TeX filter administration setting to prevent a remote code execution risk.
A remote code execution risk was identified in the file restore functionality.
The return URL in the policy tool required extra sanitizing to prevent a reflected XSS risk.
Insufficient sanitizing when exporting data to CSV / XLSX format could result in malicious formulas being inserted into the files.
Insufficient sanitizing in the formula editor could result in an XSS risk.
Insufficient sanitizing of AI provider responses resulted in an XSS risk.
Suspended users were not prevented from authenticating via the LTI Provider
A remote code execution risk was identified in the file restore functionality.
Incorrect handling of some endpoints during login made it possible to bypass the second factor of multi-factor authentication. Note: A valid username and password were still required to log in.
The upstream FPDI library was upgraded, which included a security fix.
User list filters allowed managers to filter by user profile fields that they could not view on users' profiles.
Insufficient username escaping could allow a minor XSS risk if an unauthenticated user was tricked into opening a password reset link (so did not affect authenticated user sessions).
Missing capability checks made it possible for users to trigger grade penalty recalculation without having the capability to do so.
An incorrect capability check in the AI "generate image" web service could allow users to access that feature without having the "generate image" capability.
The manual enrolment management page did not prevent direct access when the plugin was disabled and a link was no longer available in the UI. Note: This still required the relevant capability to access the page (had it been enabled).
Insufficient escaping resulted in an XSS risk in some templates used to display forum posts.
Insufficient validation of the audience classname in report builder allowed arbitrary class instantiation.
The report builder fragment output callbacks did not verify that the requesting user had the required capability to access the requested report, potentially allowing users to retrieve report data beyond their permitted access.
A blind SSRF risk was identified in the MNet peers management functionality, due to missing validation of peer hostnames against the cURL blocked hosts configuration. Note: This feature is only available to site administrators.
Capability checks were missing from course assistance AI placement web services, which could allow users to make requests to those AI course assistance web services without having the relevant capabilities (if those features are enabled).
The quiz feature to add section headings did not include the necessary token to prevent a CSRF risk.
The actions to enable and disable group messaging did not include the necessary token to prevent a CSRF risk.
The Feedback activity module's import functionality required additional sanitizing to prevent a reflected XSS risk.
The user profile page reset action did not include the necessary token to prevent a CSRF risk.
The setting for users to set their own homepage preference did not include the necessary token to prevent a CSRF risk.
Missing group access checks in some grade web services could allow a user to access grade and user information for students in groups they did not have permission to view.
Insufficient CSRF token and capability checks were applied to an MNet admin setting.
The upstream AWS SDK for PHP library was upgraded, which included a security fix.
The grade penalty rules reset function did not include the necessary token to prevent a CSRF risk.
A flaw in message handling of conversations with deleted users could result in active users losing access to their private messages.
When blind marking is enabled for an assignment, user IDs remained visible on the assignment submissions page instead of being masked.
Badges being awarded with a role performed the correct capability check, but did not verify the user had the required role to meet the award criterion.
Forum ratings required additional permission checks to prevent users from being able to view ratings they did not have the capability to access.
Insufficient checks on a confirmation email web service made it easier to brute force password checks against known usernames.
An open redirect risk existed in the OAuth login functionality.
There was a behaviour that made it possible for a student to bypass the timed restriction on a timed assignment.
Insufficient capability checks meant users with the capability to create group events, but without the capability to view hidden groups, could see hidden and separate groups in the list of groups to select for calendar events.
It was possible to brute force password checks against known usernames when the mobile client and auth_webservice were enabled.
The router made it possible to determine valid course IDs due to inconsistent handling of valid and non-existent course IDs.
Incorrect error handling in the routing system could result in the application directories being listed if the "Accept text/html" header was not configured.
Insufficient capability checks meant a user with permission to manage/view cohorts in a lower context could retrieve data about cohorts defined in the system context, that they would not otherwise have access to.
Insufficient enrolment checks could result in quiz notifications being sent to users who had an inactive enrolment in the course (such as being suspended or past their enrolment end date).
Insufficient handling of course access checks in a course overview function could results in the information being returned to a user who did not have access to the course.
Advisory titles and descriptions are Moodle's own words, from the security announcements on moodle.org, and every entry links to its source. This list is a lower bound: Moodle stops issuing advisories for a branch once it leaves security support. MDL Shield is an independent service and is not affiliated with or endorsed by Moodle Pty Ltd.