CVE-2026-21443 PUBLISHED

OpenEMR allows inconsistent escaping of translation function output

Assigner: GitHub_M
Reserved: 29.12.2025 Published: 25.02.2026 Updated: 25.02.2026

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.

Metrics

CVSS Vector: CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:P/VC:N/VI:N/VA:N/SC:L/SI:L/SA:N/E:U
CVSS Score: 1.2

Product Status

Vendor openemr
Product openemr
Versions
  • Version < 8.0.0 is affected

References

Problem Types

  • CWE-116: Improper Encoding or Escaping of Output CWE