CVE-2026-32126

7.1 HIGH

📋 TL;DR

This vulnerability in OpenEMR allows any authenticated user to bypass authorization checks and perform administrative actions. It affects all OpenEMR installations prior to version 8.0.0.1, enabling regular users to modify clinical decision support alerts, delete clinical plans, and edit rule configurations.

💻 Affected Systems

Products:
  • OpenEMR
Versions: All versions prior to 8.0.0.1
Operating Systems: All platforms running OpenEMR
Default Config Vulnerable: ⚠️ Yes
Notes: Affects all OpenEMR installations with default configuration. Requires authenticated user access.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Malicious authenticated users could disable critical clinical alerts, delete patient care plans, and modify medical rule configurations, potentially leading to patient harm through incorrect medical decisions.

🟠

Likely Case

Authenticated users with malicious intent or compromised accounts gain unauthorized administrative access to clinical decision support systems, allowing them to suppress important alerts and modify care plans.

🟢

If Mitigated

With proper access controls and monitoring, unauthorized changes could be detected and rolled back, though the vulnerability still provides initial access.

🌐 Internet-Facing: HIGH
🏢 Internal Only: HIGH

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires authenticated access but is straightforward once authenticated. The vulnerability is in authorization logic, not requiring complex exploitation techniques.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 8.0.0.1

Vendor Advisory: https://github.com/openemr/openemr/security/advisories/GHSA-752v-x6m4-6cf8

Restart Required: Yes

Instructions:

1. Backup your OpenEMR installation and database. 2. Download OpenEMR version 8.0.0.1 or later. 3. Replace existing installation files with new version. 4. Run database upgrade scripts if needed. 5. Restart web server services.

🔧 Temporary Workarounds

Temporary ACL Restriction

all

Manually restrict access to vulnerable controller endpoints (/interface/super/rules/*, /interface/super/edit/*, etc.) at web server level

# Apache example: <LocationMatch "^/interface/super/(rules|edit|ajax|alerts|detail|browse|add)">
    Require ip 127.0.0.1
</LocationMatch>
# Nginx example: location ~ ^/interface/super/(rules|edit|ajax|alerts|detail|browse|add) {
    deny all;
}

🧯 If You Can't Patch

  • Implement strict network segmentation to isolate OpenEMR from general user networks
  • Enable detailed audit logging for all administrative actions and monitor for unauthorized access attempts

🔍 How to Verify

Check if Vulnerable:

Check OpenEMR version in admin interface or examine /sites/default/sqlconf.php for version information

Check Version:

grep -r "\$openemr_version" /path/to/openemr/sites/default/sqlconf.php

Verify Fix Applied:

After patching, verify version is 8.0.0.1 or later and test that non-admin users cannot access administrative controller endpoints

📡 Detection & Monitoring

Log Indicators:

  • Unauthorized access attempts to /interface/super/ endpoints by non-admin users
  • Modifications to clinical decision rules or alerts by non-admin users
  • Access to administrative functions from unexpected user accounts

Network Indicators:

  • HTTP requests to vulnerable endpoints (/interface/super/rules/*, /interface/super/edit/*, etc.) from non-admin IPs

SIEM Query:

source="openemr_logs" AND (uri_path="/interface/super/*" AND user_role!="admin")

🔗 References

📤 Share & Export