CVE-2026-124445: OpenEMR OneTimeAuth token replay and PIN brute force

CVE-2026-124445 · Severity: critical · CVSS 9.8 · Published 2026-11-08

OpenEMR is a medical records and practice management system used by healthcare providers to store and manage patient information including sensitive health data (PHI). A flaw in the authentication token system allows attackers who obtain a patient portal login token to replay it indefinitely or guess a 6-digit PIN without rate limiting, gaining unauthorized access to patient records including medical history, prescriptions, and personal information.

Technologies: OpenEMR. Vendors: OpenEMR.

Quick answers

Is CVE-2026-124445 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-124445 being exploited in the wild.
How severe is CVE-2026-124445?
Critical severity, with a CVSS score of 9.8, published 8 November 2026.
Which products and versions are affected?
OpenEMR 7.0.1 through 8.3.0; patched in 8.4.0.
Is there a fix for CVE-2026-124445?
Yes: fixed in 8.4.0. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-124445 attacked?
It is attacked over the network, in a web application.
Am I affected by CVE-2026-124445?
Check whether you run OpenEMR at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • Fixed in: 8.4.0

Technical details

The OneTimeAuth component in src/Common/Auth/OneTimeAuth.php fails to enforce the enforce_onetime_use and max_access_count security flags during token consumption, allowing unlimited replay of captured service_auth tokens for their full lifetime (up to 14 days). Additionally, the PIN validation lacks rate limiting, account lockout, or cryptographic comparison (uses loose != instead of ===), enabling brute-force attacks on the 151,200-permutation PIN space and bypass via type juggling with numeric equivalents.

Affected products

  • OpenEMR OpenEMR 7.0.1 through 8.3.0; patched in 8.4.0

Timeline

  • 2026-09-13: disclosed
  • 2026-11-08: advisory
  • 2026-11-08: patched: version 8.4.0 released

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.