← Vulnerability feed

Vulnerability record · CVE-2019-3963 · published 20 August 2019

CVE-2019-3963: OpenEMR controller.php reflected XSS in patient_id parameter

Open Emr · Openemr

OpenEMR 5.0.1 and earlier contains a reflected cross-site scripting flaw in the patient_id parameter of controller.php. Because the parameter is reflected into the response without adequate encoding, an attacker can run script in the browser context of a logged-in user. This matters for a clinical application where session hijacking can expose patient data and allow actions as the victim.

6.1 CVSS 3.0 Medium EPSS 53% · top 1.1% CWE-79 · Cross-site scripting
6.1CVSS 3.0 base score, v2 4.3
53%EPSS exploitation probability, 30 days
NoNot in CISA KEV
1Affected product versions listed by NVD
2References, 2 tagged exploit
17 Jun 2026Last modified by NVD

Description

In OpenEMR 5.0.1 and earlier, controller.php contains a reflected XSS vulnerability in the patient_id parameter. This could allow an attacker to execute arbitrary code in the context of a user's session.

CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N

Automated analysis

Generated by VULONE's analysis model from the NVD record, CISA KEV and EPSS data on 20 September 2026. Confidence: high.

medium priorityCVSS rates it 6.1 medium and it requires user interaction, but high EPSS and public exploit references raise the practical risk in exposed OpenEMR deployments.

What it is

OpenEMR 5.0.1 and earlier contains a reflected cross-site scripting flaw in the patient_id parameter of controller.php. Because the parameter is reflected into the response without adequate encoding, an attacker can run script in the browser context of a logged-in user. This matters for a clinical application where session hijacking can expose patient data and allow actions as the victim.

Impact

An attacker can execute arbitrary script in a victim's session, enabling session theft, credential or data exfiltration, and actions performed with the victim's privileges. The CVSS scope change (S:C) reflects that impact can extend beyond the vulnerable component.

Attack surface

Reached over the network via a crafted URL to controller.php with a malicious patient_id value; no authentication is required to deliver the payload, but the victim must be a user who loads the link (UI:R).

Exploitation

Not listed in CISA KEV, but EPSS is high (0.52733, ~98.9th percentile) and both references are tagged Exploit, indicating public exploit material exists.

What to do

  • Upgrade OpenEMR to a version later than 5.0.1 that fixes the patient_id reflected XSS.
  • If immediate upgrade is not possible, apply input validation and output encoding for the patient_id parameter in controller.php.
  • Deploy a web application firewall or content security policy to block reflected script injection while patching is pending.
  • Enforce HttpOnly and Secure flags on session cookies to limit session theft via injected script.

Detection

  • Search web and proxy logs for requests to controller.php with patient_id values containing script tags, event handlers, or encoded payloads.
  • Monitor for outbound requests or page loads referencing attacker-controlled domains from OpenEMR sessions.
  • Alert on anomalous session activity or privilege changes following access to controller.php URLs with unusual patient_id parameters.

This assessment is produced automatically and is not human-reviewed. Verify against the vendor advisory before acting on it.

Affected products

1 vulnerable configurations from NVD's CPE data, grouped by vendor and product.

References

Track CVE-2019-3963 inside VULONE

Watch it alongside the ransomware crews, C2 infrastructure and forum chatter that reference it, query it through the API and pull it into your SIEM over TAXII.

Start free Open in platform

Related vulnerabilities

Same products first, then exploited flaws of the same weakness class.

9.8CVE-2026-24898Open-emr openemr improper authentication vulnerabilityOpenEMR is a free and open source electronic health records and medical practice management application. Prior to 8.0.0, an unauthenticated token dis…EPSS 0.56%9.8CVE-2024-22611Open-emr openemr sql injection vulnerabilityOpenEMR 7.0.2 is vulnerable to SQL Injection via \openemr\library\classes\Pharmacy.class.php, \controllers\C_Pharmacy.class.php and \openemr\controll…EPSS 6.3%9.8CVE-2024-37734Open-emr openemr vulnerabilityAn issue in OpenEMR 7.0.2 allows a remote attacker to escalate privileges viaa crafted POST request using the noteid parameter.EPSS 0.80%9.8CVE-2020-13567Open-emr openemr sql injection vulnerabilityMultiple SQL injection vulnerabilities exist in phpGACL 3.3.7. A specially crafted HTTP request can lead to a SQL injection. An attacker can send an …EPSS 2.3%9.8CVE-2019-17197Open-emr openemr sql injection vulnerabilityOpenEMR through 5.0.2 has SQL Injection in the Lifestyle demographic filter criteria in library/clinical_rules.php that affects library/patient.inc.EPSS 1.5%9.8CVE-2019-14529Open-emr openemr sql injection vulnerabilityOpenEMR before 5.0.2 allows SQL Injection in interface/forms/eye_mag/save.php.EPSS 28%9.8CVE-2018-17179Open-emr openemr sql injection vulnerabilityAn issue was discovered in OpenEMR before 5.0.1 Patch 7. There is SQL Injection in the make_task function in /interface/forms/eye_mag/php/taskman_fun…EPSS 13%9.8CVE-2018-17181Open-emr openemr sql injection vulnerabilityAn issue was discovered in OpenEMR before 5.0.1 Patch 7. SQL Injection exists in the SaveAudit function in /portal/lib/paylib.php and the portalAudit…EPSS 1.4%

Source: NIST National Vulnerability Database (record CVE-2019-3963), CISA KEV, FIRST EPSS (scores of 2026-09-26). This page is refreshed as NVD updates the record.