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

Source: https://junglewise.ai/threats/cve-2026-124445-openemr-from-7-0-1-before-8-4-0-contains-a-flaw-in-src-common  
Publisher: Junglewise Threat Intelligence, https://junglewise.ai/threats  
Published: 2026-11-08. Updated: 2026-11-08  
License: CC BY 4.0 with a link back

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](https://junglewise.ai/threats/technologies/openemr-openemr). Vendors: [OpenEMR](https://junglewise.ai/threats/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

- [https://github.com/openemr/openemr/security/advisories/GHSA-xg3m-9pfq-c8r6](https://github.com/openemr/openemr/security/advisories/GHSA-xg3m-9pfq-c8r6)
- [https://www.vulncheck.com/advisories/openemr-7.0.1-before-8.4.0-onetimeauth-token-replay-and-pin-brute-force](https://www.vulncheck.com/advisories/openemr-7.0.1-before-8.4.0-onetimeauth-token-replay-and-pin-brute-force)

## Related threats

- [OpenEMR path traversal in oe-module-faxsms disposeDocument](https://junglewise.ai/threats/cve-2026-124490-openemr-before-8-3-0-contains-a-path-traversal-vulnerability-in)
- [OpenEMR broken access control in portal payment processing](https://junglewise.ai/threats/cve-2026-124489-openemr-before-8-3-0-contains-a-broken-access-control)
- [OpenEMR authorization bypass in encounter form loaders](https://junglewise.ai/threats/cve-2026-124488-openemr-before-8-3-0-contains-an-authorization-bypass)
- [OpenEMR improper authorization in FHIR DocumentReference $docref](https://junglewise.ai/threats/cve-2026-124487-openemr-before-8-4-0-contains-an-improper-authorization)
- [OpenEMR missing authorization in classic document controller](https://junglewise.ai/threats/cve-2026-124486-openemr-before-8-3-0-contains-a-missing-authorization)
