Every CVE Search/ Get API key

CVE-2014-7835

Moodle allows attackers to upload files containing JavaScript

2.1 LowFix available

webservice/upload.php in Moodle 2.6.x before 2.6.6 and 2.7.x before 2.7.3 does not ensure that a file upload is for a private or draft area, which allows remote authenticated users to upload files containing JavaScript, and consequently conduct cross-site scripting (XSS) attacks, by specifying the profile-picture area.

Exploit likelihood

1.43%Up 0.3 points since Feb 4, 2022
90%50%10%1%

What each source reports

NVD Score used 2.1

webservice/upload.php in Moodle 2.6.x before 2.6.6 and 2.7.x before 2.7.3 does not ensure that a file upload is for a private or draft area, which allows remote authenticated users to upload files containing JavaScript, and consequently conduct cross-site scripting (XSS) attacks, by specifying the profile-picture area.

Record
CVE-2014-7835
CVSS 2.0
2.1 LowAV:N/AC:H/Au:S/C:N/I:P/A:N
Weakness
CWE-79
Updated
2026-11-02
CVE List No score

webservice/upload.php in Moodle 2.6.x before 2.6.6 and 2.7.x before 2.7.3 does not ensure that a file upload is for a private or draft area, which allows remote authenticated users to upload files containing JavaScript, and consequently conduct cross-site scripting (XSS) attacks, by specifying the profile-picture area.

Record
CVE-2014-7835
Updated
2026-11-02
EUVDEUVD-2022-5418 No score

webservice/upload.php in Moodle 2.6.x before 2.6.6 and 2.7.x before 2.7.3 does not ensure that a file upload is for a private or draft area, which allows remote authenticated users to upload files containing JavaScript, and consequently conduct cross-site scripting (XSS) attacks, by specifying the profile-picture area.

Record
EUVD-2022-5418
Updated
2026-11-03
GitHub AdvisoriesGHSA-vrf6-q7qj-69v5 No score

Moodle allows attackers to upload files containing JavaScript

webservice/upload.php in Moodle 2.6.x before 2.6.6 and 2.7.x before 2.7.3 does not ensure that a file upload is for a private or draft area, which allows remote authenticated users to upload files containing JavaScript, and consequently conduct cross-site scripting (XSS) attacks, by specifying the profile-picture area.

Record
GHSA-vrf6-q7qj-69v5
Weakness
CWE-79
Updated
2026-11-02
OSVGHSA-vrf6-q7qj-69v5 No score

Moodle allows attackers to upload files containing JavaScript

webservice/upload.php in Moodle 2.6.x before 2.6.6 and 2.7.x before 2.7.3 does not ensure that a file upload is for a private or draft area, which allows remote authenticated users to upload files containing JavaScript, and consequently conduct cross-site scripting (XSS) attacks, by specifying the profile-picture area.

Record
GHSA-vrf6-q7qj-69v5
Weakness
CWE-79
Updated
2026-11-02
OSVMGASA-2014-0483 No score

Updated moodle package fixes security vulnerabilities

In Moodle before 2.6.5, without forcing encoding, it was possible that UTF7 characters could be used to force cross-site scripts to AJAX scripts (although this is unlikely on modern browsers and on most Moodle pages) (MSA-14-0035).

In Moodle before 2.6.5, an XSS issue through $searchcourse in mod/feedback/mapcourse.php, due to the last search string in the Feedback module not being escaped in the search input field (CVE-2014-7830).

In Moodle before 2.6.5, the word list for temporary password generation was short, therefore the pool of possible passwords was not big enough (CVE-2014-7845).

In Moodle before 2.6.5, capability checks in the LTI module only checked access to the course and not to the activity (CVE-2014-7832).

In Moodle before 2.6.5, group-level entries in Database activity module became visible to users in other groups after being edited by a teacher (CVE-2014-7833).

In Moodle before 2.6.5, unprivileged users could access the list of available tags in the system (CVE-2014-7846).

In Moodle before 2.6.5, the script used to geo-map IP addresses was available to unauthenticated users increasing server load when used by other parties (CVE-2014-7847).

In Moodle before 2.6.5, when using the web service function for Forum discussions, group permissions were not checked (CVE-2014-7834).

In Moodle before 2.6.5, by directly accessing an internal file, an unauthenticated user can be shown an error message containing the file system path of the Moodle install (CVE-2014-7848).

In Moodle before 2.6.5, if web service with file upload function was available, user could upload XSS file to his profile picture area (CVE-2014-7835).

In Moodle before 2.6.5, two files in the LTI module lacked a session key check, potentially allowing cross-site request forgery (CVE-2014-7836).

In Moodle before 2.6.5, by tweaking URLs, users who were able to delete pages in at least one Wiki activity in the course were able to delete pages in other Wiki pages in the same course (CVE-2014-7837).

In Moodle before 2.6.5, set tracking script in the Forum module lacked a session key check, potentially allowing cross-site request forgery (CVE-2014-7838).

In Moodle before 2.6.5, session key check was missing on return page in module LTI allowing attacker to include arbitrary message in URL query string (MSA-14-0049).

Record
MGASA-2014-0483
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
moodle/moodle
Packagist
2.6.0 up to 2.6.6
2.6.6
moodle/moodle
Packagist
2.7.0 up to 2.7.3
2.7.3
moodle/moodle
Packagist
2.6.0 up to 2.6.6, plus listed versions
v2.6.0v2.6.1v2.6.2v2.6.3v2.6.4v2.6.5
2.6.6
moodle/moodle
Packagist
2.7.0 up to 2.7.3, plus listed versions
v2.7.0v2.7.1v2.7.2
2.7.3
moodle
Mageia:3
From an advisory covering 12 CVEs
before 2.6.6-1.mga3
2.6.6-1.mga3
moodle
Mageia:4
From an advisory covering 12 CVEs
before 2.6.6-1.mga4
2.6.6-1.mga4

History

History
RecordedChangedSources
affected, facts
aliasesEUVD
first indexedCVE List, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2014-7835 is a low vulnerability (CVSS 2.1) in Moodle, published November 22, 2014. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 1.43%, the 73rd percentile. Fixed in moodle/moodle 2.6.6.

References

Show 22 moreShow less
MoveEnter Open