CVE-2025-26529

8.3 HIGH

📋 TL;DR

This stored cross-site scripting (XSS) vulnerability in Moodle's site administration live log allows attackers to inject malicious scripts that execute when administrators view the log. It affects Moodle administrators who access the vulnerable administration interface. The vulnerability requires administrative access to exploit.

💻 Affected Systems

Products:
  • Moodle
Versions: Specific versions not specified in CVE, but appears to affect versions before the MDL-84145 fix
Operating Systems: All platforms running Moodle
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects users with administrative privileges who can access the site administration live log feature.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

An attacker with admin access could inject malicious JavaScript that steals administrator credentials, performs actions as administrators, or installs backdoors when other admins view the live log.

🟠

Likely Case

Malicious admin injects scripts to maintain persistence, steal session cookies, or perform unauthorized actions through other administrators' browsers.

🟢

If Mitigated

With proper input validation and output encoding, the injected scripts would be rendered harmless as text rather than executable code.

🌐 Internet-Facing: MEDIUM - While exploitation requires admin access, internet-facing Moodle instances with compromised admin accounts could be affected.
🏢 Internal Only: MEDIUM - Internal Moodle instances are vulnerable if an admin account is compromised or a malicious admin exists.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Exploitation requires administrative access to inject malicious content into the live log, which then executes when other administrators view the log.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Versions containing commit MDL-84145

Vendor Advisory: https://moodle.org/mod/forum/discuss.php?d=466145

Restart Required: No

Instructions:

1. Update Moodle to a version containing the MDL-84145 fix. 2. Check the Moodle git repository for the specific commit. 3. Apply the patch if manual patching is required.

🔧 Temporary Workarounds

Restrict Admin Access

all

Limit administrative access to trusted personnel only and implement strong authentication controls.

Disable Live Log Feature

all

Temporarily disable the site administration live log feature if not essential.

🧯 If You Can't Patch

  • Implement strict Content Security Policy (CSP) headers to prevent script execution from untrusted sources
  • Monitor admin user activity and review live log access patterns for suspicious behavior

🔍 How to Verify

Check if Vulnerable:

Check if your Moodle version includes the MDL-84145 commit by examining the git history or version changelog.

Check Version:

Check Moodle version via admin interface or config.php file

Verify Fix Applied:

Verify the fix by checking that user input in the live log is properly HTML-encoded when displayed.

📡 Detection & Monitoring

Log Indicators:

  • Unusual JavaScript or HTML content in live log entries
  • Multiple admin sessions from same user

Network Indicators:

  • Unexpected outbound connections from admin browsers after viewing logs

SIEM Query:

Search for: 'live log' AND (javascript: OR <script> OR onload=) in admin access logs

🔗 References

📤 Share & Export