CVE-2026-102940 OpenEMR: Missing Write ACL Allows Unauthorized Document Reassignment
CriticalCVSS 9.6
EPSS 0.38%
- Published
- Updated
- Exploit status
- No public exploit known
Description
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.
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| openemr | = < 8.4.0 | No fix listed |
| open-emr openemr | < 8.4.0 | 8.4.0 |
References
- https://github.com/openemr/openemr/security/advisories/GHSA-92rh-g949-4mvv exploit vendor-advisory
- https://github.com/openemr/openemr/pull/13353 issue-tracking patch
- https://github.com/openemr/openemr/commit/312b5d042f7fa49cc78ebed041155fba339a991c patch
- https://github.com/openemr/openemr/releases/tag/v8_3_0 product release-notes