OpenEMR is a free and open source electronic health records and medical practice management application. Prior to version 8.0.0, the `xl()` translation function returns unescaped strings. While wrapper functions exist for escaping in different contexts (`xlt()` for HTML, `xla()` for attributes, `xlj()` for JavaScript), there are places in the codebase where `xl()` output is used directly without escaping. If an attacker could insert malicious content into the translation database, these unescaped outputs could lead to XSS. Version 8.0.0 fixes the issue.
References
| Link | Resource |
|---|---|
| https://github.com/openemr/openemr/commit/b1e3fe8a9ed8bcaf17e0b73d7fad5434f9fe36da | Patch |
| https://github.com/openemr/openemr/security/advisories/GHSA-3f9j-cqjj-7h46 | Vendor Advisory Mitigation |
Configurations
History
No history.
Information
Published : 2026-02-25 02:16
Updated : 2026-02-26 15:34
NVD link : CVE-2026-21443
Mitre link : CVE-2026-21443
CVE.ORG link : CVE-2026-21443
JSON object : View
Products Affected
open-emr
- openemr
CWE
CWE-116
Improper Encoding or Escaping of Output
