Moodle URL Manipulation Remote Account Information Disclosure

https://www.osisecurity.com.au/moodle-url-manipulation-remote-account-infor=
mation-disclosure.html

Date:
04-Apr-2017

Product:
Moodle

Versions affected:
2.4.10, 2.5.6, 2.6.3, 2.7 and earlier.

Vulnerability:
Information disclosure.

Example:
/user/edit.php?id=3D reveals account owner name

1. Log in to http://demo.moodle.net/ as user student:sandbox.
2. Click view profile when logged in (student is id=3D4).
3. Change id parameter from 4 to 3, which is the teacher
(http://demo.moodle.net/user/profile.php?id=3D3). The HTML response says
Terri Teacher who the student user has access to.
4. Change id parameter to 2
(http://demo.moodle.net/user/profile.php?id=3D2). The HTML response says
"The details of this user are not available to you" and the navigation
bar above says "Home / My profile / View profile / User".
5. Note that it says "User" - but hides the name!
6. Change the URL from profile.php to edit.php
(http://demo.moodle.net/user/edit.php?id=3D2).
7. The HTML message is "Sorry, but you do not currently have
permissions to do that (Edit user profile)" ... BUT, the navigation
bar says "Home / Users / Admin User".
Voil=C3=A0! The account name is "Admin User"

Effective on university websites which have 1+ million end users.

Credit:
Discovered by Patrick Webster

Disclosure timeline:
29-May-2014 - Discovered during audit, reported to tracker.
11-Jul-2014 - Fix committed MDL-45760.
14-Jul-2014 - Patch released for 2.4.11, 2.5.7, 2.6.4, 2.7.1.
04-Apr-2017 - Public disclosure.

About OSI Security:

OSI Security is an independent network and computer security auditing
and consulting company based in Sydney, Australia. We provide internal
and external penetration testing, vulnerability auditing and wireless
site audits, vendor product assessments, secure network design,
forensics and risk mitigation services.

We can be found at http://www.osisecurity.com.au/