What’s Vulnerable › Vulnerabilities
CVE-2025-67491: OpenEMR has Stored XSS in ub04 helper
- Severity: medium (CVSS 5.4 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.3% probability of exploitation in the next 30 days
- Public exploit or detection template: yes
- Published: 2026-02-25 · updated 2026-06-17
- Weakness: CWE-79
Description
OpenEMR is a free and open source electronic health records and medical practice management application. Versions 5.0.0.5 through 7.0.3.4 have a stored cross-site scripting vulnerability in the ub04 helper of the billing interface. The variable `$data` is passed in a click event handler enclosed in single quotes without proper sanitization. Thus, despite `json_encode` a malicious user can still inject a payload such as ` ac' ><img src=x onerror=alert(document.cookie)> ` to trigger the bug. This vulnerability allows low privileged users to embed malicious JS payloads on the server and perform stored XSS attack. This, in turn makes it possible for malicious users to steal the session cookies and perform unauthorized actions impersonating administrators. Version 7.0.4 patches the issue.
Affected products
- openemr: from 5.0.0.5 before 7.0.4 — fixed in 7.0.4
How to fix
Upgrade to a fixed version: openemr 7.0.4. Check the vendor advisory for mitigations.
References
- https://github.com/openemr/openemr/blob/a65b11d8b8e973b8758ce0dc3efb4b6ec0466d85/interface/billing/ub04_helpers.php#L52-L60
- https://github.com/openemr/openemr/commit/66a11c2d72ade16c4a908cd839d27cd7b261f97a
- https://github.com/openemr/openemr/security/advisories/GHSA-5fq8-jwvw-3m5w
Get alerted when CVE-2025-67491 or the next vulnerability affects your stack