CVE-2026-24487

6.5 MEDIUM

📋 TL;DR

OpenEMR versions before 8.0.0 have an authorization bypass vulnerability in the FHIR CareTeam endpoint that allows patient-scoped tokens to access care team data for all patients instead of just the authenticated patient's data. This affects all OpenEMR installations using FHIR APIs with patient-scoped tokens, potentially exposing Protected Health Information (PHI) across the entire system.

💻 Affected Systems

Products:
  • OpenEMR
Versions: All versions prior to 8.0.0
Operating Systems: All platforms running OpenEMR
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects installations using FHIR APIs with patient-scoped tokens. The vulnerability is present in default configurations when FHIR is enabled.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete disclosure of all patient-provider relationships and care team structures across the entire healthcare organization, violating HIPAA regulations and exposing sensitive PHI to unauthorized parties.

🟠

Likely Case

Unauthorized access to patient care team information for multiple patients, potentially revealing treatment relationships and care coordination details that should remain confidential.

🟢

If Mitigated

Limited exposure if proper network segmentation, API gateway controls, and monitoring are in place to detect anomalous access patterns.

🌐 Internet-Facing: HIGH if FHIR APIs are exposed to the internet, as patient tokens could be intercepted or manipulated to access other patients' data.
🏢 Internal Only: MEDIUM if only accessible internally, but still significant due to potential insider threats or compromised internal accounts.

🎯 Exploit Status

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

Exploitation requires a valid patient-scoped FHIR token, but once obtained, the bypass is straightforward as it involves accessing the CareTeam endpoint without proper patient compartment filtering.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 8.0.0

Vendor Advisory: https://github.com/openemr/openemr/security/advisories/GHSA-4frq-f657-hwrc

Restart Required: Yes

Instructions:

1. Backup your OpenEMR installation and database. 2. Download OpenEMR version 8.0.0 or later from the official repository. 3. Follow the OpenEMR upgrade documentation for your specific deployment method. 4. Apply the patch by updating to version 8.0.0 or later. 5. Restart the web server and verify the upgrade was successful.

🔧 Temporary Workarounds

Disable FHIR CareTeam Endpoint

all

Temporarily disable the vulnerable FHIR CareTeam endpoint until patching can be completed.

# Modify OpenEMR configuration to disable FHIR CareTeam resource
# Edit the FHIR configuration file to remove or restrict CareTeam endpoint access

Implement API Gateway Controls

linux

Deploy an API gateway or WAF to restrict and monitor FHIR API access patterns.

# Configure rate limiting and access controls for /fhir/CareTeam endpoints
# Example for nginx:
# location /fhir/CareTeam { deny all; }

🧯 If You Can't Patch

  • Implement strict network segmentation to isolate FHIR APIs from untrusted networks
  • Enable detailed logging and monitoring of all FHIR CareTeam endpoint access and set up alerts for anomalous patterns

🔍 How to Verify

Check if Vulnerable:

Check if your OpenEMR version is below 8.0.0 and if FHIR APIs are enabled. Test with a patient-scoped token to see if you can access CareTeam data for patients other than the token owner.

Check Version:

Check the OpenEMR interface or database for version information, or examine the codebase for version markers.

Verify Fix Applied:

After upgrading to 8.0.0 or later, verify that patient-scoped tokens can only access their own CareTeam data and receive proper authorization errors when attempting to access other patients' data.

📡 Detection & Monitoring

Log Indicators:

  • Multiple CareTeam resource accesses from single patient token in short time
  • Access denied errors for CareTeam endpoints after patch
  • Unusual patterns of FHIR API calls to CareTeam resources

Network Indicators:

  • High volume of requests to /fhir/CareTeam endpoints
  • Requests with patient tokens accessing sequential patient IDs

SIEM Query:

source="openemr_logs" AND (uri_path="/fhir/CareTeam" OR endpoint="CareTeam") | stats count by patient_token, patient_id | where count > threshold

🔗 References

📤 Share & Export