CVE-2026-1154

4.3 MEDIUM

📋 TL;DR

This vulnerability allows attackers to inject malicious scripts into the E-Learning System's lesson module through Title/Description fields. When executed, this cross-site scripting (XSS) attack can steal session cookies, redirect users, or perform actions on their behalf. Organizations using SourceCodester E-Learning System 1.0 are affected.

💻 Affected Systems

Products:
  • SourceCodester E-Learning System
Versions: 1.0
Operating Systems: All
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability exists in the default installation and requires no special configuration to be exploitable.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Attackers steal administrator session cookies, gain full system access, and compromise all user data including student records and credentials.

🟠

Likely Case

Attackers steal user session cookies to impersonate legitimate users, potentially accessing sensitive course materials or personal information.

🟢

If Mitigated

With proper input validation and output encoding, the attack fails to execute, resulting in no impact beyond failed exploitation attempts.

🌐 Internet-Facing: HIGH
🏢 Internal Only: MEDIUM

🎯 Exploit Status

Public PoC: ⚠️ Yes
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploit code is publicly available, making this easy for attackers to weaponize. Attackers need admin access to the lesson module to exploit.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Unknown

Vendor Advisory: https://www.sourcecodester.com/

Restart Required: No

Instructions:

No official patch available. Monitor vendor website for updates. Consider implementing workarounds or replacing the software.

🔧 Temporary Workarounds

Input Validation Filter

all

Implement server-side input validation to sanitize Title and Description fields before processing

Modify /admin/modules/lesson/index.php to add HTML entity encoding for user inputs

Content Security Policy

all

Implement CSP headers to restrict script execution

Add header: Content-Security-Policy: script-src 'self'

🧯 If You Can't Patch

  • Restrict access to the admin interface using network segmentation and IP whitelisting
  • Implement web application firewall (WAF) rules to block XSS payloads in Title/Description parameters

🔍 How to Verify

Check if Vulnerable:

Test by submitting a basic XSS payload like <script>alert('test')</script> in the Title or Description field of the lesson module

Check Version:

Check the software version in the admin dashboard or review the installation files for version indicators

Verify Fix Applied:

After implementing fixes, test with the same XSS payload to ensure it's properly sanitized and doesn't execute

📡 Detection & Monitoring

Log Indicators:

  • Unusual POST requests to /admin/modules/lesson/index.php with script tags in parameters
  • Multiple failed login attempts followed by successful admin login

Network Indicators:

  • HTTP requests containing <script> tags in Title or Description parameters
  • Outbound connections to suspicious domains after admin login

SIEM Query:

source="web_logs" AND uri="/admin/modules/lesson/index.php" AND (param="Title" OR param="Description") AND (value="*<script>*" OR value="*javascript:*")

🔗 References

📤 Share & Export