MEDIUM 6.3

CVE-2026-14775: Authenticated File Upload Vulnerability in SourceCodester LMS 1.0

A file upload vulnerability exists in SourceCodester's Online Examination & Learning Management System version 1.0. An authenticated attacker can bypass upload restrictions by manipulating the user_id parameter in the /process_lesson.php file, allowing them to upload malicious files to the system. The vulnerability requires valid login credentials but no special privileges. Exploit code is publicly available.

Source data · NVD / CISA · public domain

CVSS
3.1 · 6.3 MEDIUM · CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L
Weaknesses (CWE)
CWE-284, CWE-434
Affected products
0 configuration(s)
Published / Modified
2026-07-05 / 2026-07-07

NVD description (verbatim)

A vulnerability was identified in SourceCodester Onlne Examination & Learning Management System 1.0. Affected is an unknown function of the file /process_lesson.php. Such manipulation of the argument user_id leads to unrestricted upload. The attack may be launched remotely. The exploit is publicly available and might be used. The name of the affected product appears to have a typo in it.

6 reference(s) · View on NVD →

SEC.co analysis · AI-assisted, reviewed against source

Technical summary

CVE-2026-14775 is a classic improper access control vulnerability (CWE-284) combined with unrestricted file upload (CWE-434) in SourceCodester Online Examination & Learning Management System 1.0. The vulnerability exists in /process_lesson.php where insufficient validation of the user_id parameter allows authenticated users to circumvent upload restrictions. An attacker with valid credentials can craft requests that bypass intended file type or destination controls, leading to arbitrary file placement on the server. The CVSS 3.1 score of 6.3 (MEDIUM) reflects the requirement for authentication, though the impact includes confidentiality, integrity, and availability risks.

Business impact

Organizations deploying this learning management system face data exfiltration risk through uploaded files, potential malware injection into the educational environment, and system compromise. Attackers could introduce malicious files into lesson materials, compromising student and instructor systems that download content. The threat is heightened by public exploit availability, which lowers the skill barrier for attacks. Institutions managing sensitive student records or operating in regulated sectors face compliance and liability concerns if unauthorized file uploads lead to data exposure.

Affected systems

SourceCodester Online Examination & Learning Management System version 1.0 is affected. The product name appears in the source data with a typo ('Onlne'). Organizations should verify their deployment versions against SourceCodester's official documentation to confirm if they run version 1.0 or earlier patches. The vendor product list in the source data is empty, so confirm version affiliation directly with SourceCodester.

Exploitability

Exploitability is high relative to the CVSS score. The vulnerability requires authenticated access (valid login credentials) but does not require elevated privileges within the system. An attacker with a standard user account can execute the exploit. Critically, public exploit code is available, eliminating the need for sophisticated attack development. The attack surface includes any endpoint where the LMS accepts user uploads, making detection challenging if logging is insufficient. Network accessibility is direct (no complex network topology required).

Remediation

Update to a patched version released by SourceCodester after 2026-07-07 (the modification date of this CVE entry). Apply vendor patches immediately given the public exploit availability and authenticated attack path. If patches are not yet available from the vendor, implement compensating controls: restrict file upload functionality at the web application firewall level, enforce strict file type whitelisting, isolate the /process_lesson.php endpoint with IP-based access controls, and monitor upload activities for anomalies. Verify patch versions against the official SourceCodester security advisory.

Patch guidance

Check SourceCodester's official security advisories and update portal for version 1.0 patch releases. Apply updates in a test environment first to ensure compatibility with existing lesson content and user data. After patching, validate that file upload restrictions are properly enforced by testing with non-standard file types. Monitor application logs post-deployment for any blocked upload attempts, which may indicate attack attempts. If SourceCodester has not yet released patches, prioritize compensating controls as described in the remediation section.

Detection guidance

Monitor /process_lesson.php for POST/PUT requests with suspicious user_id parameter values—particularly those that differ from the authenticated user's actual ID or contain path traversal sequences. Log and alert on file uploads with mismatches between declared file type and actual content (e.g., executable files with image extensions). Examine uploaded files for unexpected MIME types or file signatures. Implement Web Application Firewall rules to restrict file extensions uploaded via this endpoint to known-safe types. Review access logs for rapid or bulk upload attempts by single users, which may indicate automated exploitation.

Why prioritize this

Despite the MEDIUM CVSS score, this vulnerability merits prompt attention due to: (1) public exploit availability eliminating development friction for attackers, (2) the direct path to system compromise through arbitrary file upload, (3) threat to sensitive educational data and student records, and (4) the relatively low skill barrier—any authenticated user can exploit it. Educational institutions and training platforms are frequent targets for data theft. Prioritize patching ahead of lower-severity vulnerabilities that lack public exploits.

Risk score, explained

The CVSS 3.1 score of 6.3 reflects a medium severity assessment: authentication is required (lowering severity), but the attack is network-accessible and requires no user interaction beyond login. The vector AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L indicates that successful exploitation impacts confidentiality (via uploaded malware accessing files), integrity (via modified or injected files), and availability (via resource exhaustion or denial-of-service through large uploads). The score does not fully account for the real-world risk amplified by public exploit code and the educational sector's reliance on file-based course content distribution.

Frequently asked questions

Does this vulnerability require administrator privileges to exploit?

No. The vulnerability can be exploited by any authenticated user with a valid account, including standard students or instructors. This significantly expands the potential attacker pool.

What file types can be uploaded through this vulnerability?

The source data indicates unrestricted upload capability, suggesting no robust file type filtering is enforced. An attacker could potentially upload executable files, scripts, or other malicious content. The specific file types accepted depend on the server configuration and any client-side controls, which can often be bypassed.

Is this vulnerability listed on CISA's Known Exploited Vulnerabilities (KEV) catalog?

No. As of the CVE modification date (2026-07-07), this vulnerability is not on the CISA KEV list. However, public exploit code exists, so active exploitation may begin shortly or already be underway in targeted campaigns.

How can I verify if our system is vulnerable?

Check your SourceCodester installation version against the confirmed affected version (1.0). If you run version 1.0 and have not applied patches from SourceCodester issued after July 2026, your system is vulnerable. Conduct a controlled test in a non-production environment by attempting to upload a non-standard file via a standard user account to /process_lesson.php with a manipulated user_id parameter.

This analysis is based on CVE-2026-14775 and publicly available source data as of July 2026. Specific patch versions, detailed vendor statements, and full technical indicators should be verified against SourceCodester's official security advisory. SEC.co does not provide exploit code or weaponized proof-of-concept instructions. Organizations should conduct their own risk assessment and testing in controlled environments. Patch availability and timelines are subject to vendor discretion and should be confirmed directly with SourceCodester. This analysis is for informational purposes and does not constitute security advice tailored to your specific infrastructure. Source: NVD (public-domain), retrieved 2026-08-14. Analysis generated by SEC.co (claude-haiku-4-5).