Security announcements

MSA-20-0004: Admin PHP unit webrunner tool requires additional input escaping

by Michael Hawkins -

Insufficient input escaping was applied to the PHP unit webrunner admin tool.

NOTE: It is important to note that this update is only flagged as a precautionary measure, as it may provide limited CLI access to Moodle site admins. This may be considered a security risk in circumstances where admins do not ordinarily have access to the server CLI and/or in some hosting situations where site admins are not considered trusted users. This tool will also be removed entirely from Moodle 3.9.


Severity/Risk: Minor
Versions affected: 3.8 to 3.8.1, 3.7 to 3.7.4, 3.6 to 3.6.8, 3.5 to 3.5.10 and earlier unsupported versions
Versions fixed: 3.8.2, 3.7.5, 3.6.9 and 3.5.11
Reported by: Brendan Heywood
CVE identifier: CVE-2020-1756
Changes (master): http://git.moodle.org/gw?p=moodle.git&a=search&h=HEAD&st=commit&s=MDL-67726
Tracker issue: MDL-67726 Admin PHP unit webrunner tool requires additional input escaping

MSA-20-0003: IP addresses can be spoofed using X-Forwarded-For

by Michael Hawkins -

X-Forwarded-For headers could be used to spoof a user's IP, in order to bypass remote address checks.

PATCH NOTE: For user IPs to be checked (and logged) accurately after this patch is applied, sites using multiple levels of reverse proxies/balancers that append to the X-Forwarded-For header will need to configure the new "reverseproxyignore" setting. This ensures the IPs of the later proxies are ignored in favour of the user's IP.


Severity/Risk: Serious
Versions affected: 3.8 to 3.8.1, 3.7 to 3.7.4, 3.6 to 3.6.8, 3.5 to 3.5.10 and earlier unsupported versions
Versions fixed: 3.8.2, 3.7.5, 3.6.9 and 3.5.11
Reported by: Brendan Heywood
CVE identifier: CVE-2020-1755
Changes (master): http://git.moodle.org/gw?p=moodle.git&a=search&h=HEAD&st=commit&s=MDL-67861
Tracker issue: MDL-67861 IP addresses can be spoofed using X-Forwarded-For

MSA-20-0002: Grade history report does not respect Separate groups mode in the course settings

by Michael Hawkins -

Users viewing the grade history report without the 'access all groups' capability were not restricted to viewing grades of users within their own groups.


Severity/Risk: Minor
Versions affected: 3.8 to 3.8.1, 3.7 to 3.7.4, 3.6 to 3.6.8, 3.5 to 3.5.10 and earlier unsupported versions
Versions fixed: 3.8.2, 3.7.5, 3.6.9 and 3.5.11
Reported by: Tim Hunt
CVE identifier: CVE-2020-1754
Changes (master): http://git.moodle.org/gw?p=moodle.git&a=search&h=HEAD&st=commit&s=MDL-56287
Tracker issue: MDL-56287 Grade history report does not respect Separate groups mode in the course settings

MSA-20-0001: Stored XSS in message conversation overview

by Michael Hawkins -

Messages required extra sanitizing before updating the conversation overview, to prevent the risk of stored XSS.


Severity/Risk: Serious
Versions affected: 3.8
Versions fixed: 3.8.1
Reported by: Cid da Costa
Workaround: Disable the messaging system until the patch has been applied.
CVE identifier: CVE-2020-1691
Changes (master): http://git.moodle.org/gw?p=moodle.git&a=search&h=HEAD&st=commit&s=MDL-67637
Tracker issue: MDL-67637 Stored XSS in message conversation overview

MSA-19-0029: Reflected XSS possible from some fatal error messages

by Michael Hawkins -

Fatal error messages required extra sanitizing to prevent reflected XSS risks on some pages.


Severity/Risk: Serious
Versions affected: 3.7 to 3.7.2, 3.6 to 3.6.6, 3.5 to 3.5.8 and earlier unsupported versions
Versions fixed: 3.7.3, 3.6.7 and 3.5.9
Reported by: Yuriy Dyachenko
CVE identifier: CVE-2019-14884
Changes (master): http://git.moodle.org/gw?p=moodle.git&a=search&h=HEAD&st=commit&s=MDL-66161
Tracker issue: MDL-66161 Reflected XSS possible from some fatal error messages

MSA-19-0028: Email media URL tokens were not checking for user status

by Michael Hawkins -

Tokens used to fetch inline attachments in email notifications were not disabled when a user's account was no longer active. Note: to access files, a user would need to know the file path, and their token.


Severity/Risk: Minor
Versions affected: 3.7 to 3.7.2 and 3.6 to 3.6.6
Versions fixed: 3.7.3 and 3.6.7
Reported by: Juan Leyva
CVE identifier: CVE-2019-14883
Changes (master): http://git.moodle.org/gw?p=moodle.git&a=search&h=HEAD&st=commit&s=MDL-66377
Tracker issue: MDL-66377 Email media URL tokens were not checking for user status

MSA-19-0027: Open redirect in Lesson edit page

by Michael Hawkins -

An open redirect existed in the Lesson edit page.


Severity/Risk: Minor
Versions affected: 3.7 to 3.7.2, 3.6 to 3.6.6, 3.5 to 3.5.8 and earlier unsupported versions
Versions fixed: 3.7.3, 3.6.7 and 3.5.9
Reported by: Paul Holden
CVE identifier: CVE-2019-14882
Changes (master): http://git.moodle.org/gw?p=moodle.git&a=search&h=HEAD&st=commit&s=MDL-66228
Tracker issue: MDL-66228 Open redirect in Lesson edit page

MSA-19-0026: Blind XSS reflected in some locations where user email is displayed

by Michael Hawkins -

User emails required additional sanitizing to prevent blind XSS risk on some pages.


Severity/Risk: Minor
Versions affected: 3.7 to 3.7.2
Versions fixed: 3.7.3
Reported by: Yuri Zwaig
CVE identifier: CVE-2019-14881
Changes (master): http://git.moodle.org/gw?p=moodle.git&a=search&h=HEAD&st=commit&s=MDL-66762
Tracker issue: MDL-66762 Blind XSS reflected in some locations where user email is displayed

MSA-19-0025: Add additional verification for some OAuth 2 logins to prevent account compromise

by Michael Hawkins -

OAuth 2 providers who do not verify users' email address changes require additional verification during sign-up to reduce the risk of account compromise.


Severity/Risk: Serious
Versions affected: 3.7 to 3.7.2, 3.6 to 3.6.6, 3.5 to 3.5.8 and earlier unsupported versions
Versions fixed: 3.7.3, 3.6.7 and 3.5.9
Reported by: CeDiS Team
Workaround: Disable login via OAuth 2 providers that may be affected, until the patch is applied.
CVE identifier: CVE-2019-14880
Changes (master): http://git.moodle.org/gw?p=moodle.git&a=search&h=HEAD&st=commit&s=MDL-66598
Tracker issue: MDL-66598 Add additional verification for some OAuth 2 logins to prevent account compromise

MSA-19-0024: Assigned Role in Cohort did not un-assign on removal

by Michael Hawkins -

When a cohort role assignment was removed, the associated capabilites were not being revoked (where applicable).


Severity/Risk: Minor
Versions affected: 3.7 to 3.7.2, 3.6 to 3.6.6, 3.5 to 3.5.8 and earlier unsupported versions
Versions fixed: 3.7.3, 3.6.7 and 3.5.9
Reported by: Yusuf Yilmaz, Mick Cassell
CVE identifier: CVE-2019-14879
Changes (master): http://git.moodle.org/gw?p=moodle.git&a=search&h=HEAD&st=commit&s=MDL-66257
Tracker issue: MDL-66257 Assigned Role in Cohort did not un-assign on removal