CVE-2026-33912
Received Received - Intake
Stored Cross-Site Scripting in OpenEMR Forms Allows Arbitrary JavaScript

Publication date: 2026-03-25

Last updated on: 2026-03-26

Assigner: GitHub, Inc.

Description
OpenEMR is a free and open source electronic health records and medical practice management application. Prior to version 8.0.0.3, an authenticated attacker could craft a malicious form that, when submitted by a victim, executes arbitrary JavaScript in the victim's browser session. Version 8.0.0.3 patches the issue.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-03-25
Last Modified
2026-03-26
Generated
2026-05-07
AI Q&A
2026-03-26
EPSS Evaluated
2026-05-05
NVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
open-emr openemr to 8.0.0.3 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-79 The product does not neutralize or incorrectly neutralizes user-controllable input before it is placed in output that is used as a web page that is served to other users.
Attack-Flow Graph
AI Powered Q&A
Can you explain this vulnerability to me?

This vulnerability affects OpenEMR, an open source electronic health records and medical practice management application. Before version 8.0.0.3, an authenticated attacker could create a malicious form that, when submitted by a victim, would execute arbitrary JavaScript code in the victim's browser session.


How can this vulnerability impact me? :

The vulnerability allows an attacker to execute arbitrary JavaScript in the victim's browser session, which can lead to unauthorized actions performed on behalf of the victim, data theft, or session hijacking. This can compromise the confidentiality and integrity of the victim's data within the OpenEMR application.


What immediate steps should I take to mitigate this vulnerability?

To mitigate this vulnerability, you should upgrade OpenEMR to version 8.0.0.3 or later, as this version patches the issue.


How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:

The vulnerability is a reflected cross-site scripting (XSS) issue in OpenEMR that allows an authenticated attacker to execute arbitrary JavaScript in a victim's browser session. This can lead to limited data disclosure and limited data modification, as indicated by the CVSS impact metrics.

Since OpenEMR is an electronic health records system, such vulnerabilities could potentially impact compliance with regulations like HIPAA, which require protection of patient data confidentiality and integrity. Exploitation of this vulnerability might lead to unauthorized access or manipulation of sensitive health information, thereby risking non-compliance.

The vulnerability requires user interaction and authentication but can be exploited remotely, which means attackers could leverage it to compromise user sessions and data privacy.

The patch in version 8.0.0.3 improves input validation and sanitization to prevent this XSS vulnerability, thereby helping to maintain compliance with data protection standards by reducing the risk of unauthorized data exposure or modification.


How can this vulnerability be detected on my network or system? Can you suggest some commands?

This vulnerability is a reflected cross-site scripting (XSS) issue in OpenEMR versions prior to 8.0.0.3, specifically in the handling of the POST parameter 'reportID' in the file custom/ajax_download.php.

To detect if your system is vulnerable, you can check the OpenEMR version installed and verify if it is earlier than 8.0.0.3.

Additionally, you can monitor HTTP POST requests to the endpoint custom/ajax_download.php for suspicious or crafted 'reportID' parameters that might be used to exploit the reflected XSS vulnerability.

Suggested commands to detect the vulnerability or attempts to exploit it include using network traffic inspection tools like curl or wget to send crafted POST requests, or using grep to check for vulnerable versions in your system files.

  • Check OpenEMR version installed: grep -i version /path/to/openemr/version_file or check the application UI.
  • Use curl to test the vulnerable endpoint with a crafted payload: curl -X POST -d "reportID=<script>alert(1)</script>" https://your-openemr-instance/custom/ajax_download.php -v
  • Monitor web server logs for suspicious 'reportID' parameters containing script tags or unusual input.
  • Use network monitoring tools (e.g., Wireshark, tcpdump) to capture POST requests to custom/ajax_download.php and analyze the 'reportID' parameter.

Ask Our AI Assistant
Need more information? Ask your question to get an AI reply (Powered by our expertise)
0/70
EPSS Chart