Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft URL with malicious web_path parameter
-
DeliveryDeliver link to authenticated OpenEMR victim via email or attacker-controlled page
-
ExploitVictim clicks link while session is active
-
ExecutionBrowser issues authenticated GET request to arbitrary endpoint
-
PersistOpenEMR processes request under victim's credentials
-
ImpactState-changing action executed (e.g., forced logout)
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V3 - Web Frontend Security Anti-CSRF tokens, SameSite cookies
MITRE ATT&CK
1 technique across 1 tactic: Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The victim must be an authenticated OpenEMR user with 'Patients - Documents' ACL permissions, and must click a crafted URL or visit an attacker-controlled page while their session is active - passive user interaction (UI:P per CVSS 4.0) is a hard prerequisite. The attacker requires no privileges on the OpenEMR instance. Exploitation is limited to state-changing actions reachable via GET requests; the CVSS vector confirms no confidentiality impact (VC:N), meaning direct patient data exfiltration is not achievable through this vector alone. Non-default conditions limiting exploitation: the victim must hold a specific ACL role ('Patients - Documents'), must be actively authenticated at the time of the crafted request, and must interact with the malicious link; unauthenticated users or those lacking the permission are not viable targets. |
| Impact | The CVSS 4.0 score of 5.3 (Medium) accurately reflects the realistic threat model. The attack vector is network-based (AV:N) with low complexity (AC:L) and requires no attacker privileges (PR:N), but passive victim interaction is mandatory (UI:P) - the authenticated target must click a crafted link or visit an attacker-controlled page during an active session. The impact is constrained to low integrity (VI:L) and excludes confidentiality (VC:N) and availability (VA:N), consistent with the described outcome of forced logout and state changes rather than data exfiltration. No EPSS score was provided in the input data, so probabilistic exploitation likelihood is unknown. The CVE does not appear in the CISA KEV catalog and no public exploit has been identified, indicating no confirmed opportunistic or widespread exploitation at time of analysis. The practical attack surface is further narrowed by the permission prerequisite - only users with 'Patients - Documents' ACL are viable targets. For healthcare organizations, the sensitivity of the environment elevates the priority of patching despite the moderate CVSS score; CSRF in EHR workflows can enable manipulation of patient-related actions beyond simple logout. |
| Exploit ScenarioDerived | An attacker emails a crafted link embedding a malicious |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 19, 2026
Cross-site request forgery in OpenEMR's DICOM viewer (versions before 8.3.0) allows an unauthenticated attacker to force an authenticated user holding 'Patients - Documents' permissions to issue arbitrary state-changing requests to OpenEMR endpoints, including forced logout. The unsanitized reflection of the web_path GET parameter in library/dicom_frame.php is the root mechanism: a crafted URL delivers the malicious payload via the victim's own authenticated session. No public exploit has been identified at time of analysis, and this CVE is not listed in the CISA KEV catalog.
RemediationAI
Upgrade to OpenEMR v8.3.0, which resolves this vulnerability by adding CSRF token validation to the DICOM viewer endpoint and several related state-changing endpoints. The patched release is available at https://github.com/openemr/openemr/releases/tag/v8_3_0 and the fix is documented in commit f760adc7bddaf9d118e1a0d40590e686783ed21b at https://github.com/openemr/openemr/commit/f760adc7bddaf9d118e1a0d40590e686783ed21b. If immediate upgrade is not feasible, restrict 'Patients - Documents' ACL permissions to the minimum set of users who genuinely require DICOM viewing access, reducing the pool of viable victims; this does not eliminate the vulnerability but materially reduces exposure. Placing the OpenEMR interface behind a VPN or IP allowlist prevents external delivery of crafted URLs, which is an effective compensating control but may impact legitimate remote access workflows. User awareness about clicking unexpected links while authenticated is a tertiary mitigation with minimal reliability.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
OpenEMR is an open-source electronic health records platform; the DICOM viewer component (library/dicom_frame.php) renders medical imaging files by accepting a web_path GET parameter specifying the image location. Prior to the fix, this parameter was embedded unsanitized into the page as a URL with no CSRF token validation and no allowlist check against expected path formats. The root cause class is CWE-352 (Cross-Site Request Forgery): state-changing GET endpoints lacked CSRF token enforcement, enabling an attacker-controlled URL to drive authenticated browser requests. The commit diff at f760adc confirms the fix: CsrfUtils::checkCsrfInput(INPUT_GET, dieOnFail: true) is now gated on web_path presence in dicom_frame.php, CSRF tokens are injected into document list and view templates (general_list.html, general_view.html) that construct DICOM viewer URLs, and related endpoints in pos_checkout_ippf.php and the Weno module's file_download.php were patched in the same commit. CPE cpe:2.3:a:openemr:openemr:*:*:*:*:*:*:*:* covers all OpenEMR versions up to but not including 8.3.0.
Know when Openemr gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
Network-delivered CSRF requires victim interaction (UI:R) but no attacker privileges; scope is unchanged, integrity impact low (forced logout/state change only), no confidentiality or availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
OpenEMR before 8.3.0 contains a cross-site request forgery vulnerability in the DICOM viewer. The web_path GET parameter in the DICOM viewer page is embedded unsanitized as a URL without validation against expected path formats. An attacker can craft a URL that causes an authenticated user with Patients - Documents permissions to make authenticated requests to arbitrary OpenEMR endpoints, enabling forced logout and other state-changing actions.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Request Forgery exploits the automatic credential inclusion behavior of web browsers.
An authenticated SQL injection vulnerability exists in OpenEMR ≤ 4.1.1 Patch 14 that allows a low-privileged attacker to
Unauthenticated token disclosure in OpenEMR before 8.0.0. CVSS 10.0. PoC and patch available.
Path traversal in OpenEMR 7.0.4 disposeDocument() allows file access. PoC available.
Path traversal in OpenEMR electronic health records before fix allows authenticated users to read arbitrary files on the
SQL injection in OpenEMR electronic health records before fix. Authenticated users can execute arbitrary SQL through the
OpenEMR 7.0.2 is vulnerable to SQL Injection via \openemr\library\classes\Pharmacy.class.php, \controllers\C_Pharmacy.cl
An issue in OpenEMR 7.0.2 allows a remote attacker to escalate privileges viaa crafted POST request using the noteid par
Information disclosure in OpenEMR 5.0.2 to before 8.0.0 exposes sensitive data. PoC and patch available.
Remote code execution in OpenEMR through 8.2.0 lets an authenticated administrator poison the document category tree so
interface/fax/fax_dispatch.php in OpenEMR 4.1.0 allows remote authenticated users to execute arbitrary commands via shel
interface/globals.php in OpenEMR 2.x, 3.x, and 4.x before 4.2.0 patch 2 allows remote attackers to bypass authentication
Authentication bypass vulnerability in portal/account/register.php in versions of OpenEMR before 5.0.1.4 allows a remote
EUVD-2026-62510
GHSA-c2ph-gr8x-j747
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB