Missing authorization in OpenEMR QRDA report download endpoints
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Security bypass
- Confidentiality · integrity · availability
- High · None · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA. Impact type from CWE-862.
Summary
OpenEMR before 8.3.0 is affected. Several custom QRDA download endpoints validate CSRF tokens but do not enforce the patients/med access control used by the canonical CQM report page, which is a missing authorization flaw (CWE-862). The endpoints also accept an unscoped report_id, so a low-privilege authenticated user can reach report generation and download logic for other reports. An attacker with such an account can retrieve QRDA Category I and Category III clinical documents for patients in a measure.
Written with Claude Haiku 5.5 from the sources below · 2026-11-05
Description from the CNA
OpenEMR is a free and open source electronic health records and medical practice management application. Prior to 8.3.0, custom/ajax_download.php, custom/download_qrda.php, custom/export_qrda_xml.php, and custom/qrda_download.php validate CSRF but do not enforce the patients/med ACL used by the canonical CQM report page. The endpoints also accept an unscoped report_id, allowing a low-privilege authenticated user to reach report generation and download logic for other reports. In a clinic with generated CQM reports, this can expose QRDA Category One and Category Three clinical documents for patients in a measure. This issue is fixed in version 8.3.0.
Why it matters now
SSVC decision points
Not available: CISA has not published SSVC decision points for this record.
Affected products
Remediation
Upgrade OpenEMR to version 8.3.0, which fixes this issue. The sources list no fixed version for any other product.
Written with Claude Haiku 5.5 from the sources below · 2026-11-05
- Fix · CNA openemr (openemr) Fixed in 8.3.0
Timeline
- 2026-11-05 Threatist record created from CVE-2026-104138
- 2026-11-07 Priority changed: MEDIUM → LOW
References
More openemr vulnerabilities
- TI-2026-24664 SQL Injection Vulnerability in ajax graphs library (OpenEMR) CVSS 3.1HIGH 8.8
- TI-2026-85645 Missing write ACL lets users reassign documents in OpenEMR CVSS 3.1CRITICAL 9.6
- TI-2026-28796 OpenEMR 8.2.0 Remote Code Execution via CategoryTree eval() Injection CVSS 4.0CRITICAL 9.4
- TI-2026-20308 OpenEMR's payments gateway_api_key secret rendered into client JS code CVSS 3.1CRITICAL 9.6
- TI-2026-20093 OpenEMR has SQL Injection in Patient API Sort Parameter CVSS 3.1CRITICAL 10.0
- TI-2026-20048 OpenEMR Arbitrary File Read Vulnerability CVSS 3.1CRITICAL 10.0
Sources
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences