MEDIUM 6.3

CVE-2026-14777: SourceCodester LMS File Upload Vulnerability – Public Exploit Available

A file upload vulnerability has been discovered in SourceCodester's Online Examination & Learning Management System version 1.0. An authenticated attacker can manipulate the /announcements.php file to upload files without proper restrictions. The vulnerability is accessible over the network and requires login credentials but no additional user interaction. Public exploit code is available, elevating the practical risk despite the CVSS score of 6.3.

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-06 / 2026-07-06

NVD description (verbatim)

A weakness has been identified in SourceCodester Onlne Examination & Learning Management System 1.0. Affected by this issue is some unknown functionality of the file /announcements.php. Executing a manipulation can lead to unrestricted upload. The attack can be executed remotely. The exploit has been made available to the public and could be used for attacks. 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-14777 stems from insufficient access control and unrestricted file upload functionality in the announcements module. The vulnerability exists in /announcements.php and can be triggered by an authenticated user (CVSS vector indicates PR:L). Improper validation of uploaded files allows an attacker to bypass intended upload restrictions. The issue maps to CWE-284 (improper access control) and CWE-434 (unrestricted upload of dangerous file type), indicating both authorization and validation gaps in the upload handler.

Business impact

Organizations deploying this learning management system face direct operational risk. An attacker with valid credentials—whether a student, instructor, or provisioned account—can upload arbitrary files to the system. This enables payload delivery for subsequent attacks, potential code execution if upload directories are web-accessible, defacement of course content, or lateral movement within the infrastructure. Educational institutions using this product should assess whether sensitive student data, intellectual property, or accreditation materials could be compromised or disrupted.

Affected systems

The vulnerability affects SourceCodester Online Examination & Learning Management System version 1.0. The product name in the advisory contains a noted typographical error ('Onlne' instead of 'Online'). No additional version information or patch releases were provided in the source data; organizations should verify their exact installed version and check the vendor's advisory for a complete list of affected releases and any available patches.

Exploitability

This vulnerability has medium exploitability characteristics. It requires authentication (a valid user account) and presents no unusual complexity in execution. The CVSS vector (AC:L, PR:L, UI:N) reflects that exploitation is straightforward once credentials are obtained. Public availability of exploit code means threat actors have ready-made tools. The lack of user interaction requirement (UI:N) means an attacker can exploit this programmatically. However, the authentication requirement limits exposure to users with legitimate system access or those who can obtain credentials through phishing or credential stuffing.

Remediation

Immediate action is to restrict access to the /announcements.php endpoint and the upload functionality it provides. Disable the feature if not actively in use. Apply any available patches from SourceCodester—verify the vendor advisory for the appropriate version. Implement compensating controls: enforce strict file-type whitelisting, store uploads outside the web root, disable script execution in upload directories, and apply principle of least privilege to user roles. Consider implementing file integrity monitoring on upload directories and review access logs for unauthorized uploads.

Patch guidance

Contact SourceCodester directly or consult their official security advisory for patch availability and version numbers. Given this is a version 1.0 product, verify whether the vendor is actively maintaining this software and what their patching timeline is. If patches are unavailable or the product is unsupported, evaluate alternative learning management systems. Document the patch version applied and test thoroughly in a non-production environment before deployment, as file handling changes can affect legitimate course material uploads.

Detection guidance

Monitor /announcements.php for POST requests with file upload parameters from users with minimal privilege levels. Flag uploads of executable file types (.exe, .php, .jsp, .sh, .py) or archives containing such files to the announcements endpoint. Review web server and application logs for 201 (Created) or 200 responses following upload attempts, especially outside normal business hours or from unusual source IPs. Implement integrity monitoring on the upload directory to detect unexpected files. Check for webshell indicators and abnormal process execution spawning from the web server process.

Why prioritize this

Prioritize remediation within 30 days. While the CVSS score is MEDIUM (6.3), the combination of public exploit availability, straightforward exploitation, and direct impact on confidentiality, integrity, and availability warrants urgent action. Educational institutions should move this higher in the queue given the sensitivity of student and institutional data. The lack of KEV status does not diminish the practical risk—public exploits drive real-world attacks regardless of federal tracking.

Risk score, explained

The CVSS 3.1 score of 6.3 (MEDIUM) reflects a network-accessible vulnerability requiring valid authentication, affecting core CIA properties (C:L, I:L, A:L). The low privilege requirement and lack of user interaction lower the barrier to exploitation. The score does not account for public exploit availability or the sensitivity of typical data in learning management systems, which should factor into organizational risk assessments. Verify the vector against the vendor advisory to ensure it reflects your deployment context.

Frequently asked questions

Does this vulnerability require administrative access to exploit?

No. The CVSS vector indicates only low privilege (PR:L) is needed. A standard student or instructor account would suffice. This broadens the attacker surface to any user with system access, whether legitimate or compromised.

Can this lead to remote code execution?

The vulnerability itself is a file upload flaw. RCE depends on post-exploitation factors: whether uploaded files are executed by the server, the file-type restrictions in place, and the web server configuration. Uploading a .php file to a web-accessible directory could lead to RCE, but not all upload scenarios enable this. Assume worst-case (RCE possible) and patch accordingly.

Is this tracked in the KEV catalog?

No, this CVE is not listed in CISA's Known Exploited Vulnerabilities catalog as of the publication date. However, public exploit code exists, so do not assume lower priority. KEV status is not a reliable indicator of risk for all vulnerabilities.

What if we've air-gapped this system or restricted it to internal use only?

The reduced exposure does lower practical risk, but do not rely on network segmentation alone as your only control. An insider threat, compromised internal account, or lateral movement from another breached system could still enable exploitation. Patch or disable the functionality as a defense-in-depth measure.

This analysis is provided for informational purposes and does not constitute a guarantee of accuracy or completeness. Vulnerability details, affected versions, and patch information are current as of the published date but may change. Always verify against the official SourceCodester security advisory, your vendor's documentation, and your specific deployment configuration. Conduct your own testing in non-production environments before applying patches. SEC.co and its authors assume no liability for decisions made based on this analysis. Organizations remain responsible for their own vulnerability management and security posture. Source: NVD (public-domain), retrieved 2026-08-14. Analysis generated by SEC.co (claude-haiku-4-5).