Cross-site request forgery in Moodle 2.x and 3.x
Priority LOW 21CWE-352Published · Updated
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Tampering
- Confidentiality · integrity · availability
- None · Low · None
- Fix status
- Fixed
Attack profile from CVSS 3.0 · NVD. Fix status from CNA and GitHub. Impact type from CWE-352.
Summary
In Moodle 2.x and 3.x, a CSRF attack is possible that allows attackers to change the "number of courses displayed in the course overview block" configuration setting.
Why it matters now
EPSS 0.00518 44th percentileScored 2026-11-07
Fix Fixed moodle/moodle (Packagist): 3.2.3, 3.1.6, 3.0.10 +1
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| — | Moodle 2.x and 3.x | Moodle 2.x and 3.x | — | No fix listed | CNA |
| — | moodle/moodle (Packagist) | 3.2 to before 3.2.3 | 3.2.3 | Patch available | GHSA-3hmr-948v-5qgq |
| — | moodle/moodle (Packagist) | 3.1 to before 3.1.6 | 3.1.6 | Patch available | GHSA-3hmr-948v-5qgq |
| — | moodle/moodle (Packagist) | 3.0 to before 3.0.10 | 3.0.10 | Patch available | GHSA-3hmr-948v-5qgq |
| — | moodle/moodle (Packagist) | 2.7 to before 2.7.20 | 2.7.20 | Patch available | GHSA-3hmr-948v-5qgq |
- Moodle 2.x and 3.x Vendor— Affected Moodle 2.x and 3.x Fixed in — No fix listed CNA
- moodle/moodle (Packagist) Vendor— Affected 3.2 to before 3.2.3 Fixed in 3.2.3 Patch available GHSA-3hmr-948v-5qgq
- moodle/moodle (Packagist) Vendor— Affected 3.1 to before 3.1.6 Fixed in 3.1.6 Patch available GHSA-3hmr-948v-5qgq
- moodle/moodle (Packagist) Vendor— Affected 3.0 to before 3.0.10 Fixed in 3.0.10 Patch available GHSA-3hmr-948v-5qgq
- moodle/moodle (Packagist) Vendor— Affected 2.7 to before 2.7.20 Fixed in 2.7.20 Patch available GHSA-3hmr-948v-5qgq
CPE configurations NVD · 53
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:moodle:moodle:2.7.0:*:*:*:*:*:*:* | 2.7.0 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.0:beta:*:*:*:*:*:* | 2.7.0 beta | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.0:rc1:*:*:*:*:*:* | 2.7.0 rc1 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.0:rc2:*:*:*:*:*:* | 2.7.0 rc2 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.1:*:*:*:*:*:*:* | 2.7.1 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.2:*:*:*:*:*:*:* | 2.7.2 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.3:*:*:*:*:*:*:* | 2.7.3 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.4:*:*:*:*:*:*:* | 2.7.4 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.5:*:*:*:*:*:*:* | 2.7.5 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.6:*:*:*:*:*:*:* | 2.7.6 | Vulnerable | Moodle |
- cpe:2.3:a:moodle:moodle:2.7.0:*:*:*:*:*:*:* Versions 2.7.0 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.0:beta:*:*:*:*:*:* Versions 2.7.0 beta Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.0:rc1:*:*:*:*:*:* Versions 2.7.0 rc1 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.0:rc2:*:*:*:*:*:* Versions 2.7.0 rc2 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.1:*:*:*:*:*:*:* Versions 2.7.1 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.2:*:*:*:*:*:*:* Versions 2.7.2 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.3:*:*:*:*:*:*:* Versions 2.7.3 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.4:*:*:*:*:*:*:* Versions 2.7.4 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.5:*:*:*:*:*:*:* Versions 2.7.5 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.6:*:*:*:*:*:*:* Versions 2.7.6 Vulnerable ·Moodle
Show 43 more CPE
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:moodle:moodle:2.7.7:*:*:*:*:*:*:* | 2.7.7 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.8:*:*:*:*:*:*:* | 2.7.8 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.9:*:*:*:*:*:*:* | 2.7.9 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.10:*:*:*:*:*:*:* | 2.7.10 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.11:*:*:*:*:*:*:* | 2.7.11 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.12:*:*:*:*:*:*:* | 2.7.12 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.13:*:*:*:*:*:*:* | 2.7.13 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.14:*:*:*:*:*:*:* | 2.7.14 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.15:*:*:*:*:*:*:* | 2.7.15 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.16:*:*:*:*:*:*:* | 2.7.16 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.17:*:*:*:*:*:*:* | 2.7.17 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:2.7.18:*:*:*:*:*:*:* | 2.7.18 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.0:*:*:*:*:*:*:* | 3.0.0 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.0:beta:*:*:*:*:*:* | 3.0.0 beta | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.0:rc1:*:*:*:*:*:* | 3.0.0 rc1 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.0:rc2:*:*:*:*:*:* | 3.0.0 rc2 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.0:rc3:*:*:*:*:*:* | 3.0.0 rc3 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.0:rc4:*:*:*:*:*:* | 3.0.0 rc4 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.1:*:*:*:*:*:*:* | 3.0.1 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.2:*:*:*:*:*:*:* | 3.0.2 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.3:*:*:*:*:*:*:* | 3.0.3 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.4:*:*:*:*:*:*:* | 3.0.4 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.5:*:*:*:*:*:*:* | 3.0.5 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.6:*:*:*:*:*:*:* | 3.0.6 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.7:*:*:*:*:*:*:* | 3.0.7 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.0.8:*:*:*:*:*:*:* | 3.0.8 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.1.0:*:*:*:*:*:*:* | 3.1.0 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.1.0:beta:*:*:*:*:*:* | 3.1.0 beta | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.1.0:rc1:*:*:*:*:*:* | 3.1.0 rc1 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.1.0:rc2:*:*:*:*:*:* | 3.1.0 rc2 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.1.1:*:*:*:*:*:*:* | 3.1.1 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.1.2:*:*:*:*:*:*:* | 3.1.2 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.1.3:*:*:*:*:*:*:* | 3.1.3 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.1.4:*:*:*:*:*:*:* | 3.1.4 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.2.0:*:*:*:*:*:*:* | 3.2.0 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.2.0:beta:*:*:*:*:*:* | 3.2.0 beta | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.2.0:rc1:*:*:*:*:*:* | 3.2.0 rc1 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.2.0:rc2:*:*:*:*:*:* | 3.2.0 rc2 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.2.0:rc3:*:*:*:*:*:* | 3.2.0 rc3 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.2.0:rc4:*:*:*:*:*:* | 3.2.0 rc4 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.2.0:rc5:*:*:*:*:*:* | 3.2.0 rc5 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.2.1:*:*:*:*:*:*:* | 3.2.1 | Vulnerable | Moodle |
| cpe:2.3:a:moodle:moodle:3.2.2:*:*:*:*:*:*:* | 3.2.2 | Vulnerable | Moodle |
- cpe:2.3:a:moodle:moodle:2.7.7:*:*:*:*:*:*:* Versions 2.7.7 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.8:*:*:*:*:*:*:* Versions 2.7.8 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.9:*:*:*:*:*:*:* Versions 2.7.9 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.10:*:*:*:*:*:*:* Versions 2.7.10 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.11:*:*:*:*:*:*:* Versions 2.7.11 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.12:*:*:*:*:*:*:* Versions 2.7.12 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.13:*:*:*:*:*:*:* Versions 2.7.13 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.14:*:*:*:*:*:*:* Versions 2.7.14 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.15:*:*:*:*:*:*:* Versions 2.7.15 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.16:*:*:*:*:*:*:* Versions 2.7.16 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.17:*:*:*:*:*:*:* Versions 2.7.17 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:2.7.18:*:*:*:*:*:*:* Versions 2.7.18 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.0:*:*:*:*:*:*:* Versions 3.0.0 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.0:beta:*:*:*:*:*:* Versions 3.0.0 beta Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.0:rc1:*:*:*:*:*:* Versions 3.0.0 rc1 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.0:rc2:*:*:*:*:*:* Versions 3.0.0 rc2 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.0:rc3:*:*:*:*:*:* Versions 3.0.0 rc3 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.0:rc4:*:*:*:*:*:* Versions 3.0.0 rc4 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.1:*:*:*:*:*:*:* Versions 3.0.1 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.2:*:*:*:*:*:*:* Versions 3.0.2 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.3:*:*:*:*:*:*:* Versions 3.0.3 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.4:*:*:*:*:*:*:* Versions 3.0.4 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.5:*:*:*:*:*:*:* Versions 3.0.5 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.6:*:*:*:*:*:*:* Versions 3.0.6 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.7:*:*:*:*:*:*:* Versions 3.0.7 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.0.8:*:*:*:*:*:*:* Versions 3.0.8 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.1.0:*:*:*:*:*:*:* Versions 3.1.0 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.1.0:beta:*:*:*:*:*:* Versions 3.1.0 beta Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.1.0:rc1:*:*:*:*:*:* Versions 3.1.0 rc1 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.1.0:rc2:*:*:*:*:*:* Versions 3.1.0 rc2 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.1.1:*:*:*:*:*:*:* Versions 3.1.1 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.1.2:*:*:*:*:*:*:* Versions 3.1.2 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.1.3:*:*:*:*:*:*:* Versions 3.1.3 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.1.4:*:*:*:*:*:*:* Versions 3.1.4 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.2.0:*:*:*:*:*:*:* Versions 3.2.0 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.2.0:beta:*:*:*:*:*:* Versions 3.2.0 beta Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.2.0:rc1:*:*:*:*:*:* Versions 3.2.0 rc1 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.2.0:rc2:*:*:*:*:*:* Versions 3.2.0 rc2 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.2.0:rc3:*:*:*:*:*:* Versions 3.2.0 rc3 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.2.0:rc4:*:*:*:*:*:* Versions 3.2.0 rc4 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.2.0:rc5:*:*:*:*:*:* Versions 3.2.0 rc5 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.2.1:*:*:*:*:*:*:* Versions 3.2.1 Vulnerable ·Moodle
- cpe:2.3:a:moodle:moodle:3.2.2:*:*:*:*:*:*:* Versions 3.2.2 Vulnerable ·Moodle
Remediation
- Fix · GHSA-3hmr-948v-5qgq moodle/moodle (Packagist) Fixed in 3.2.3 Advisory →
- Fix · GHSA-3hmr-948v-5qgq moodle/moodle (Packagist) Fixed in 3.1.6 Advisory →
- Fix · GHSA-3hmr-948v-5qgq moodle/moodle (Packagist) Fixed in 3.0.10 Advisory →
- Fix · GHSA-3hmr-948v-5qgq moodle/moodle (Packagist) Fixed in 2.7.20 Advisory →
Vendor assessments
Timeline
- 2026-10-02 Threatist record created from CVE-2017-7491
- 2026-10-03 Alias added: GHSA-3hmr-948v-5qgq
References
More Moodle vulnerabilities
- TI-2024-22468 moodle: unsafe direct use of $_SERVER['HTTP_REFERER'] in admin/tool/mfa/index.php CVSS 3.1CRITICAL 9.8
- TI-2021-14741 In Moodle, an SQL injection risk was identified in the library fetching a user's recent courses. CVSS 3.1CRITICAL 9.8
- TI-2024-29071 Moodle: remote code execution via calculated question types CVSS 3.1HIGH 8.1
- TI-2016-06653 Moodle 3.1.2 allows remote attackers to obtain sensitive information via unspecified… CVSS 3.1HIGH 7.5
- TI-2022-00259 SQL injection in moodle CVSS 3.1CRITICAL 9.8
- TI-2022-16116 Path traversal in Moodle CVSS 3.1HIGH 7.5
Sources
- CVE-2017-7491 · CVE Program
- CVE-2017-7491 · NVD
- FIRST EPSS
- GHSA-3hmr-948v-5qgq · GitHub Advisory Database · CC BY 4.0
- CVE-2017-7491 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences