Auth bypass in Openemr

CVE-2026-102940

OpenEMR is a free and open source electronic health records and medical practice management application. Prior to 8.4.0, controllers/C_Document.class.php write actions, including move_action_process(), do not verify the caller's access to the source document, current patient and category, or destination patient and category before Document::change_patient() performs the mutation. A low-privilege authenticated user can reassign an arbitrary document to a patient or category the user can access and then retrieve it through the normally protected read path. The reassignment occurs before a later list rendering check, so a final HTTP 403 response does not mean the unauthorized write was blocked. This issue is fixed in version 8.4.0.

Vulnerability class: IDOR (Insecure Direct Object Reference)

Published · last modified .

CVSS v3 metric

CVSS v3 base score 9.6 (Critical). Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N.

EPSS exploit prediction

EPSS: 0.004 (38.9th percentile), scored .

Very low probability of exploitation in the next 30 days; routine patching cadence is appropriate. 39th percentile — 38.9% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.

The 30-day trend appears once there are two daily scores.

Affected products

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2026-102940?
CVE-2026-102940 is a critical-severity vulnerability in Openemr, classified under Authorization Bypass Through User-Controlled Key. CVSS score: 9.6/10. Published 2026-11-05.
How severe is CVE-2026-102940?
Critical severity. CVSS v3 base score is 9.6 out of 10.