CVE-2026-28405: CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in MarkUsProject Markus
MarkUs is a web application for the submission and grading of student assignments. Prior to version 2.9.1, the courses/<:course_id>/assignments/<:assignment_id>/submissions/html_content route reads the contents of a student-submitted file and renders them without sanitization. This issue has been patched in version 2.9.1.
AI Analysis
Technical Summary
CVE-2026-28405 is a cross-site scripting (XSS) vulnerability classified under CWE-79 affecting the MarkUsProject Markus web application, specifically versions prior to 2.9.1. Markus is a platform used for submission and grading of student assignments. The vulnerability exists in the route courses/<:course_id>/assignments/<:assignment_id>/submissions/html_content, where the application reads the contents of student-submitted files and renders them directly in the browser without proper sanitization or neutralization of potentially malicious HTML or JavaScript code. This improper input handling allows an attacker with authenticated access to submit crafted HTML content containing malicious scripts. When another user views this content, the malicious script executes in their browser context, potentially leading to session hijacking, credential theft, unauthorized actions, or further exploitation of the application and underlying systems. The vulnerability requires low attack complexity but does require the attacker to have some level of privileges (PR:L) and user interaction (UI:R). The CVSS v3.1 base score is 8.0, reflecting high impact on confidentiality, integrity, and availability, with network attack vector and no scope change. The issue was publicly disclosed and patched in version 2.9.1 of Markus. No known exploits have been reported in the wild as of the publication date. The vulnerability highlights the importance of input validation and output encoding in web applications that render user-generated content.
Potential Impact
The impact of CVE-2026-28405 is significant for organizations using Markus versions prior to 2.9.1, especially educational institutions managing student assignments online. Successful exploitation can lead to theft of sensitive information such as user credentials and session tokens, unauthorized actions performed on behalf of users, and potential spread of malware through malicious scripts. This compromises confidentiality, integrity, and availability of the application and its data. Attackers could leverage this vulnerability to escalate privileges or pivot to other internal systems. The requirement for authenticated access limits the attack surface but does not eliminate risk, as students or insiders could exploit it. The vulnerability undermines trust in the grading platform and could disrupt academic operations. Organizations worldwide that rely on Markus for assignment submission and grading face operational and reputational risks if unpatched.
Mitigation Recommendations
To mitigate CVE-2026-28405, organizations should immediately upgrade Markus to version 2.9.1 or later where the vulnerability is patched. In addition to patching, implement strict input validation and sanitization on all user-submitted content, especially HTML or rich text inputs. Employ output encoding techniques to neutralize any potentially malicious scripts before rendering content in browsers. Restrict file types and content formats allowed for submission to reduce risk. Use Content Security Policy (CSP) headers to limit the execution of unauthorized scripts. Monitor logs for suspicious activity related to assignment submissions and user interactions. Educate users about the risks of clicking on untrusted content even within authenticated sessions. Conduct regular security assessments and code reviews focusing on input handling and output rendering. Consider deploying web application firewalls (WAFs) with rules targeting XSS attack patterns as an additional layer of defense.
Affected Countries
United States, Canada, United Kingdom, Australia, Germany, France, Netherlands, Sweden, Japan, South Korea
CVE-2026-28405: CWE-79: Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting') in MarkUsProject Markus
Description
MarkUs is a web application for the submission and grading of student assignments. Prior to version 2.9.1, the courses/<:course_id>/assignments/<:assignment_id>/submissions/html_content route reads the contents of a student-submitted file and renders them without sanitization. This issue has been patched in version 2.9.1.
AI-Powered Analysis
Technical Analysis
CVE-2026-28405 is a cross-site scripting (XSS) vulnerability classified under CWE-79 affecting the MarkUsProject Markus web application, specifically versions prior to 2.9.1. Markus is a platform used for submission and grading of student assignments. The vulnerability exists in the route courses/<:course_id>/assignments/<:assignment_id>/submissions/html_content, where the application reads the contents of student-submitted files and renders them directly in the browser without proper sanitization or neutralization of potentially malicious HTML or JavaScript code. This improper input handling allows an attacker with authenticated access to submit crafted HTML content containing malicious scripts. When another user views this content, the malicious script executes in their browser context, potentially leading to session hijacking, credential theft, unauthorized actions, or further exploitation of the application and underlying systems. The vulnerability requires low attack complexity but does require the attacker to have some level of privileges (PR:L) and user interaction (UI:R). The CVSS v3.1 base score is 8.0, reflecting high impact on confidentiality, integrity, and availability, with network attack vector and no scope change. The issue was publicly disclosed and patched in version 2.9.1 of Markus. No known exploits have been reported in the wild as of the publication date. The vulnerability highlights the importance of input validation and output encoding in web applications that render user-generated content.
Potential Impact
The impact of CVE-2026-28405 is significant for organizations using Markus versions prior to 2.9.1, especially educational institutions managing student assignments online. Successful exploitation can lead to theft of sensitive information such as user credentials and session tokens, unauthorized actions performed on behalf of users, and potential spread of malware through malicious scripts. This compromises confidentiality, integrity, and availability of the application and its data. Attackers could leverage this vulnerability to escalate privileges or pivot to other internal systems. The requirement for authenticated access limits the attack surface but does not eliminate risk, as students or insiders could exploit it. The vulnerability undermines trust in the grading platform and could disrupt academic operations. Organizations worldwide that rely on Markus for assignment submission and grading face operational and reputational risks if unpatched.
Mitigation Recommendations
To mitigate CVE-2026-28405, organizations should immediately upgrade Markus to version 2.9.1 or later where the vulnerability is patched. In addition to patching, implement strict input validation and sanitization on all user-submitted content, especially HTML or rich text inputs. Employ output encoding techniques to neutralize any potentially malicious scripts before rendering content in browsers. Restrict file types and content formats allowed for submission to reduce risk. Use Content Security Policy (CSP) headers to limit the execution of unauthorized scripts. Monitor logs for suspicious activity related to assignment submissions and user interactions. Educate users about the risks of clicking on untrusted content even within authenticated sessions. Conduct regular security assessments and code reviews focusing on input handling and output rendering. Consider deploying web application firewalls (WAFs) with rules targeting XSS attack patterns as an additional layer of defense.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-02-27T15:33:57.289Z
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 69a9e67761e8e69ef5f70093
Added to database: 3/5/2026, 8:24:23 PM
Last enriched: 3/5/2026, 8:30:50 PM
Last updated: 3/5/2026, 9:44:59 PM
Views: 5
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console in Console -> Billing for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.