CVE-2025-47942

5.3 MEDIUM

📋 TL;DR

The Open edX Platform allows unauthorized users to download python_lib.zip files from courses, which may contain custom grading code or answers to course problems. This affects any Open edX deployment using custom Python-graded problem blocks without proper access controls. Course creators and administrators are primarily impacted by potential intellectual property leakage.

💻 Affected Systems

Products:
  • Open edX Platform
Versions: All versions prior to commit 6740e75c0fdc7ba095baf88e9f5e4f3e15cfd8ba
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: Affects deployments using custom Python-graded problem blocks. The deprecated openedx/configuration repo had a temporary nginx mitigation since 2016, but Tutor deployments likely lack protection.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers download sensitive course materials including answer keys, custom grading logic, and proprietary educational content, leading to academic integrity violations and intellectual property theft.

🟠

Likely Case

Students or unauthorized users access python_lib.zip files containing problem solutions, compromising course integrity and enabling cheating.

🟢

If Mitigated

Only authorized course team members and site administrators can access python_lib.zip files, maintaining course security and intellectual property protection.

🌐 Internet-Facing: MEDIUM
🏢 Internal Only: LOW

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires access to course URLs but no special privileges. The vulnerability is straightforward to exploit once identified.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Commit 6740e75c0fdc7ba095baf88e9f5e4f3e15cfd8ba

Vendor Advisory: https://github.com/openedx/edx-platform/security/advisories/GHSA-x5cm-2hpq-pw57

Restart Required: Yes

Instructions:

1. Update Open edX Platform to include commit 6740e75c0fdc7ba095baf88e9f5e4f3e15cfd8ba. 2. Restart the edxapp service. 3. Verify python_lib.zip files are only accessible to course team and site staff.

🔧 Temporary Workarounds

NGINX Access Restriction

linux

Implement NGINX rules to block unauthorized access to python_lib.zip files

# Add to NGINX configuration:
location ~* /static/.*\.zip$ {
    deny all;
    # Or restrict to specific IPs/users
}

🧯 If You Can't Patch

  • Implement network-level access controls to restrict python_lib.zip downloads to authorized users only.
  • Monitor and audit access to python_lib.zip files in web server logs for unauthorized attempts.

🔍 How to Verify

Check if Vulnerable:

Attempt to access a python_lib.zip file from a course as a non-staff user. If downloadable, the system is vulnerable.

Check Version:

git log --oneline | grep -i '6740e75c0fdc7ba095baf88e9f5e4f3e15cfd8ba'

Verify Fix Applied:

Verify python_lib.zip files return 403 Forbidden or similar error for non-authorized users after patch application.

📡 Detection & Monitoring

Log Indicators:

  • HTTP 200 responses for python_lib.zip requests from unauthorized IPs/users
  • Unusual download patterns of .zip files from /static/ paths

Network Indicators:

  • GET requests to URLs containing 'python_lib.zip' from non-staff users

SIEM Query:

source="web_server_logs" AND uri="*python_lib.zip" AND status=200 AND user NOT IN (authorized_users)

🔗 References

📤 Share & Export