Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as user with Notes role
-
DeliveryFill Eye Exam form with JavaScript payload
-
ExploitSubmit malicious form data
-
ExecutionStored XSS executes in encounter display
-
ImpactSteal session cookies or perform actions as victim
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | OpenEMR versions prior to 8.0.0.3. Attacker requires authenticated user account with 'Notes - my encounters' role. Attacker must fill Eye Exam form with malicious JavaScript payloads. Victim with same role must view the encounter page or visit history to execute stored XSS. |
| Impact | The CVSS score of 8.7 (High severity) reflects a network-accessible vulnerability with low attack complexity, requiring low privileges and user interaction, with changed scope enabling high confidentiality and integrity impact. The attack vector (AV:N) indicates remote exploitability, while the changed scope (S:C) means the vulnerability can affect resources beyond the vulnerable component's security scope. The requirement for authenticated access with a specific role (PR:L) and user interaction (UI:R) somewhat limits exploitation, but in a healthcare environment where multiple staff members routinely access patient records, the user interaction barrier is easily overcome through normal workflows. Without EPSS or KEV data indicating active exploitation, and given the role-based access requirement, this represents a genuine risk that requires prioritization but is not yet demonstrating widespread exploitation. The healthcare context elevates the real-world severity due to the sensitivity of protected health information (PHI) and regulatory compliance requirements under HIPAA and similar frameworks. |
| Exploit ScenarioDerived | An authenticated attacker with the 'Notes - my encounters' role accesses a patient's encounter and fills out an Eye Exam form, inserting malicious JavaScript payloads into form answer fields such as visual acuity measurements or examination notes. When other healthcare providers or administrative staff with the same role view the patient's encounter page or visit history to review the examination results, the stored JavaScript executes in their browsers, potentially stealing session cookies, capturing keystrokes containing credentials, or performing unauthorized actions like modifying patient records under the victim's authenticated session. The low attack complexity and network accessibility make this readily exploitable by malicious insiders or compromised accounts. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Mar 25, 2026
A stored cross-site scripting (XSS) vulnerability exists in OpenEMR's Eye Exam form functionality that allows authenticated users with the 'Notes - my encounters' role to inject malicious JavaScript payloads through form answers. OpenEMR versions prior to 8.0.0.3 are affected. Attackers can execute arbitrary JavaScript in the browsers of other authenticated users when they view the compromised encounter pages or visit history, potentially leading to session hijacking, credential theft, or unauthorized actions within the EHR system.
RemediationAI
Upgrade OpenEMR to version 8.0.0.3 or later, which contains a patch addressing this stored XSS vulnerability (see commit at https://github.com/openemr/openemr/commit/f488efbe3eb7f17d0f057f960020cb611149f8a2 and advisory at https://github.com/openemr/openemr/security/advisories/GHSA-6ch2-p26g-x33h). Organizations unable to immediately upgrade should implement compensating controls including restricting assignment of the 'Notes - my encounters' role to only highly trusted users, implementing Content Security Policy (CSP) headers to limit JavaScript execution, and conducting audits of existing Eye Exam form entries for suspicious content. Deploy Web Application Firewall (WAF) rules to detect common XSS patterns in form submissions as a temporary defensive layer.
Affects your stack
Find out whether the stacks and servers you run are on an affected version.
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
OpenEMR (cpe:2.3:a:openemr:openemr:*:*:*:*:*:*:*:*) is an open-source electronic health records and medical practice management application widely deployed in healthcare settings. This vulnerability is classified under CWE-79 (Improper Neutralization of Input During Web Page Generation), specifically a stored XSS variant. The flaw exists in the function responsible for displaying Eye Exam form answers within patient encounter pages. The application fails to properly sanitize or encode user-supplied input from form fields before rendering it in HTML contexts, allowing JavaScript injection. Because the payload is stored in the database and executed when retrieved, this represents a persistent XSS attack surface affecting all users with sufficient privileges to view the contaminated data.
Know when Openemr gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
DescriptionGitHub Advisory
OpenEMR is a free and open source electronic health records and medical practice management application. Users with the Notes - my encounters role can fill Eye Exam forms in patient encounters. The answers to the form are displayed on the encounter page and in the visit history for the users with the same role. Versions prior to 8.0.0.3 have a stored cross-site scripting (XSS) vulnerability in the function to display the form answers, allowing any authenticated attacker with the specific role to insert arbitrary JavaScript into the system by entering malicious payloads to the form answers. The JavaScript code is later executed by any user with the form role when viewing the form answers in the patient encounter pages or visit history. Version 8.0.0.3 contains a patch.
Executive ViewAI
A stored cross-site scripting vulnerability in OpenEMR allows authenticated users to inject malicious code into patient encounter records, potentially compromising other users' sessions and enabling unauthorized access to sensitive health information. This directly threatens patient data confidentiality, system integrity, and regulatory compliance (HIPAA), affecting all organizations running vulnerable OpenEMR versions.
Restrict Eye Exam form access to minimal necessary staff; implement strict role-based access controls limiting 'Notes - my encounters' permissions; deploy Web Application Firewall (WAF) rules to detect and block JavaScript injection patterns in form submissions; enable comprehensive audit logging of all Eye Exam form activities; enforce Content Security Policy (CSP) headers to restrict inline script execution; segment EHR network access for high-risk users; disable form functionality entirely if operationally feasible until patch availability.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
Affected Products (CPE)GitHub Advisory
An authenticated SQL injection vulnerability exists in OpenEMR ≤ 4.1.1 Patch 14 that allows a low-privileged attacker to
Unauthenticated token disclosure in OpenEMR before 8.0.0. CVSS 10.0. PoC and patch available.
Path traversal in OpenEMR 7.0.4 disposeDocument() allows file access. PoC available.
Path traversal in OpenEMR electronic health records before fix allows authenticated users to read arbitrary files on the
SQL injection in OpenEMR electronic health records before fix. Authenticated users can execute arbitrary SQL through the
OpenEMR 7.0.2 is vulnerable to SQL Injection via \openemr\library\classes\Pharmacy.class.php, \controllers\C_Pharmacy.cl
An issue in OpenEMR 7.0.2 allows a remote attacker to escalate privileges viaa crafted POST request using the noteid par
Information disclosure in OpenEMR 5.0.2 to before 8.0.0 exposes sensitive data. PoC and patch available.
Remote code execution in OpenEMR through 8.2.0 lets an authenticated administrator poison the document category tree so
interface/fax/fax_dispatch.php in OpenEMR 4.1.0 allows remote authenticated users to execute arbitrary commands via shel
interface/globals.php in OpenEMR 2.x, 3.x, and 4.x before 4.2.0 patch 2 allows remote attackers to bypass authentication
Authentication bypass vulnerability in portal/account/register.php in versions of OpenEMR before 5.0.1.4 allows a remote
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB