CVE-2015-5267
Moodle uses predictable password-recovery tokens
lib/moodlelib.php in Moodle through 2.6.11, 2.7.x before 2.7.10, 2.8.x before 2.8.8, and 2.9.x before 2.9.2 relies on the PHP mt_rand function to implement the random_string and complex_random_string functions, which makes it easier for remote attackers to predict password-recovery tokens via a brute-force approach.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
7.5
lib/moodlelib.php in Moodle through 2.6.11, 2.7.x before 2.7.10, 2.8.x before 2.8.8, and 2.9.x before 2.9.2 relies on the PHP mt_rand function to implement the random_string and complex_random_string functions, which makes it easier for remote attackers to predict password-recovery tokens via a brute-force approach.
- Record
CVE-2015-5267- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - CVSS 2.0
- 5.0 Medium
AV:N/AC:L/Au:N/C:P/I:N/A:N - Weakness
- CWE-200, CWE-254
- Updated
- 2026-11-02
CVE List No score
lib/moodlelib.php in Moodle through 2.6.11, 2.7.x before 2.7.10, 2.8.x before 2.8.8, and 2.9.x before 2.9.2 relies on the PHP mt_rand function to implement the random_string and complex_random_string functions, which makes it easier for remote attackers to predict password-recovery tokens via a brute-force approach.
- Record
CVE-2015-5267- Updated
- 2026-11-02
EUVDEUVD-2022-2128 No score
lib/moodlelib.php in Moodle through 2.6.11, 2.7.x before 2.7.10, 2.8.x before 2.8.8, and 2.9.x before 2.9.2 relies on the PHP mt_rand function to implement the random_string and complex_random_string functions, which makes it easier for remote attackers to predict password-recovery tokens via a brute-force approach.
- Record
EUVD-2022-2128- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-382v-gxj9-ffhc
7.5
Moodle uses predictable password-recovery tokens
lib/moodlelib.php in Moodle through 2.6.11, 2.7.x before 2.7.10, 2.8.x before 2.8.8, and 2.9.x before 2.9.2 relies on the PHP mt_rand function to implement the random_string and complex_random_string functions, which makes it easier for remote attackers to predict password-recovery tokens via a brute-force approach.
- Record
GHSA-382v-gxj9-ffhc- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-200
- Updated
- 2026-11-02
OSVGHSA-382v-gxj9-ffhc
7.5
Moodle uses predictable password-recovery tokens
lib/moodlelib.php in Moodle through 2.6.11, 2.7.x before 2.7.10, 2.8.x before 2.8.8, and 2.9.x before 2.9.2 relies on the PHP mt_rand function to implement the random_string and complex_random_string functions, which makes it easier for remote attackers to predict password-recovery tokens via a brute-force approach.
- Record
GHSA-382v-gxj9-ffhc- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Weakness
- CWE-200
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2015-5267
7.5
lib/moodlelib.php in Moodle through 2.6.11, 2.7.x before 2.7.10, 2.8.x before 2.8.8, and 2.9.x before 2.9.2 relies on the PHP mt_rand function to implement the random_string and complex_random_string functions, which makes it easier for remote attackers to predict password-recovery tokens via a brute-force approach.
- Record
UBUNTU-CVE-2015-5267- CVSS 3.0
- 7.5 High
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N - Updated
- 2026-11-02
OSVMGASA-2015-0381 No score
Updated moodle packages fix security vulnerabilities
Updated moodle package fixes security vulnerabilities:
In Moodle before 2.8.8, completed and graded lesson activity was not protected against making new attempts to answer some questions, so students could re-attempt answering questions in the lesson (CVE-2015-5264).
In Moodle before 2.8.8, users could delete files uploaded by other users in wiki (CVE-2015-5265).
In Moodle before 2.8.8, meta course synchronisation enrols suspended students as managers for a short period of time and causes large database growth. On large installations, when the sync script takes a long time, suspended students may get assigned a manager role in meta course for several minutes (CVE-2015-5266)
In Moodle before 2.8.8, password recovery tokens can be guessed because of php randomisation limitations (CVE-2015-5267).
In Moodle before 2.8.8, when viewing ratings, the group access was not properly checked, allowing users from other groups to view ratings (CVE-2015-5268).
In Moodle before 2.8.8, capability to manage groups does not have XSS risk, however it was possible to add XSS to the grouping description (CVE-2015-5269).
The moodle package has been updated to version 2.8.8, fixing these issues and several other bugs.
Additionally, the preg plugin has been updated to version 2.8, and the OU Multiple Response question type and UIkit theme have been added to the package.
- Record
MGASA-2015-0381- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
moodle/moodlePackagist |
before 2.7.10 | 2.7.10 |
moodle/moodlePackagist |
2.8.0 up to 2.8.8 | 2.8.8 |
moodle/moodlePackagist |
2.9.0 up to 2.9.2 | 2.9.2 |
moodle/moodlePackagist |
before 2.7.10, plus listed versions v2.3.10v2.3.11v2.3.4v2.3.5v2.3.6 Show 45 moreShow lessv2.3.7v2.3.8v2.3.9v2.4.0v2.4.0-rc1v2.4.1v2.4.10v2.4.11v2.4.2v2.4.3v2.4.4v2.4.5v2.4.6v2.4.7v2.4.8v2.4.9v2.5.0v2.5.0-betav2.5.0-rc1v2.5.1v2.5.2v2.5.3v2.5.4v2.5.5v2.5.6v2.5.7v2.5.8v2.5.9v2.6.0v2.6.0-betav2.6.0-rc1v2.6.1v2.6.10v2.6.11v2.6.2v2.6.3v2.6.4v2.6.5v2.6.6v2.6.7v2.6.8v2.6.9v2.7.0v2.7.0-betav2.7.0-rc1 |
2.7.10 |
moodle/moodlePackagist |
2.8.0 up to 2.8.8, plus listed versions v2.8.0v2.8.1v2.8.2v2.8.3v2.8.4v2.8.5v2.8.6v2.8.7 |
2.8.8 |
moodle/moodlePackagist |
2.9.0 up to 2.9.2, plus listed versions v2.9.0v2.9.1 |
2.9.2 |
moodleMageia:5 From an advisory covering 6 CVEs |
before 2.8.8-1.mga5 | 2.8.8-1.mga5 |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| affected | ||
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2015-5267 is a high vulnerability (CVSS 7.5) in Moodle, published September 23, 2015. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 2.37%, the 83rd percentile. Fixed in moodle/moodle 2.7.10.
References
git.moodle.org/gw?p=moodle.git&a=search&h=HEAD&st=commit&s=MDL-50860
openwall.com/lists/oss-security/2015/09/21/1
securitytracker.com/id/1033619
moodle.org/mod/forum/discuss.php?d=320291
nvd.nist.gov/vuln/detail/CVE-2015-5267
github.com/moodle/moodle/commit/289bc7f9e3022918b4cfd2cc9851472f0cea2896
Show 20 moreShow less
github.com/moodle/moodle/commit/5337b2295237958c93b6c65fa595859aaa7bf257
github.com/moodle/moodle/commit/6e8224365ffcdf328458ea7852dc62574e806119
github.com/moodle/moodle/commit/e4ac3879c2d1f8fe66caa74ff1544248bccef61e
web.archive.org/web/20160323063809/http://www.securitytracker.com/id/1033619
github.com/advisories/GHSA-382v-gxj9-ffhc
github.com/moodle/moodle
advisories.mageia.org/MGASA-2015-0381.html
bugs.mageia.org/show_bug.cgi?id=16767
moodle.org/mod/forum/discuss.php?d=320287
moodle.org/mod/forum/discuss.php?d=320289
moodle.org/mod/forum/discuss.php?d=320290
moodle.org/mod/forum/discuss.php?d=320292
moodle.org/mod/forum/discuss.php?d=320293
docs.moodle.org/dev/Moodle_2.8.8_release_notes
moodle.org/mod/forum/discuss.php?d=319884
bitbucket.org/oasychev/moodle-plugins
moodle.org/plugins/view/qtype_oumultiresponse
moodle.org/plugins/view/theme_uikit
ubuntu.com/security/CVE-2015-5267
cve.org/CVERecord?id=CVE-2015-5267
Left out here: 10 versions. The JSON record has them.