Security News

OpenEMR’s 8.3.0 and 8.4.0 Patches Fixed Three More Severe Flaws

OpenEMR critical vulnerabilities fixed in 8.3.0 and 8.4.0: SQL injection, a token replay bug and stored XSS. Upgrade to 8.4.0 to close all five.

Brandefense logo 4 Min Read
Cracked glass panel with red neon outline and two broken corners, cover art for OpenEMR critical vulnerabilities

OpenEMR’s 8.3.0 and 8.4.0 releases fixed a wave of OpenEMR critical vulnerabilities, five flaws in total from the same August and September 2026 disclosure. Two are the fax and SMS module bugs covered on their own pages; the other three are new to this post. OpenEMR rates four of the five Critical and one High. The version that carries every fix is 8.4.0.

What CVE-2026-124469, CVE-2026-124445 and CVE-2026-124463 Let an Attacker Do

CVE-2026-124469 is a SQL injection flaw in OpenEMR’s Fee Sheet drug-inventory lookup, DrugSalesService::sellDrug. The advisory says a per-product warehouse value from the form reaches the ORDER BY clause unsanitized. Any authenticated user who can open the Fee Sheet form can trigger it, and a default install grants that to low-privileged clinical roles such as nurses. The advisory says the resulting read can reach the entire database, including the bcrypt password hashes OpenEMR stores for provider and admin accounts.

CVE-2026-124445 sits in OneTimeAuth, the component that logs patients into the portal from a one-time link. The advisory says the component never enforces the one-time-use and access-count limits a caller sets on a token, and never revokes it after use. Some portal flows also require a PIN, and the advisory says that check has no rate limiting. A captured token or a guessed PIN opens a full patient-portal session exposing protected health information, per the advisory.

CVE-2026-124463 is a stored cross-site scripting flaw in CAMOS, an OpenEMR encounter-form module. The advisory says an authenticated user with CAMOS access can save HTML through ajax_save.php. It runs unencoded when the entry prints through one branch of rx_print.php.

That lets the stored script act and read data as whichever logged-in user views the print, per the advisory. OpenEMR’s own release notes rate this one High, one band under the other two flaws above.

How These OpenEMR Critical Vulnerabilities Compare

VulnCheck is the CNA for all five records. The CVSS v3.1 and v4.0 scores below are both VulnCheck’s; the severity column is OpenEMR’s own rating from its GitHub release notes, not a CVSS band.

CVE Flaw CVSS v3.1 CVSS v4.0 OpenEMR severity Fixed in
CVE-2026-124450 Fax/SMS module access control bypass 9.9 9.3 Critical 8.3.0
CVE-2026-124490 RingCentral fax client path traversal 9.1 9.4 Critical 8.3.0
CVE-2026-124469 Fee Sheet SQL injection 9.9 9.4 Critical 8.3.0
CVE-2026-124445 OneTimeAuth token replay and PIN bypass 9.8 9.3 Critical 8.4.0
CVE-2026-124463 CAMOS stored XSS via Rx print 8.7 9.3 High 8.3.0

What Should You Do Now?

Steps 2 and 3 follow the advisories. Steps 1 and 4 are our own advice.

OpenEMR patch checklist
  1. Upgrade to OpenEMR 8.4.0This one upgrade carries every fix in this post plus the two fax and SMS module fixes from 8.3.0, so one update closes all five.
  2. Audit Fee Sheet and CAMOS accessList which roles can open the Fee Sheet form and save CAMOS entries. The advisories say a default install grants both to low-privileged clinical roles, not only billing or admin staff.
  3. Review one-time portal linksCheck how long patient-portal links stay valid, and review portal access logs for the same one-time token used more times than a single visit should allow.
  4. Rotate credentials after upgradingIf the Fee Sheet form was reachable by low-privileged roles before you upgraded, rotate database and admin credentials, since the SQL injection could read password hashes.

We cover the fax and SMS module fixes in full on their own pages, the broken access control flaw and the RingCentral path traversal flaw. None of the five flaws in this release is in the CISA Known Exploited Vulnerabilities catalog as of version 2026.11.06. For the weakness classes behind them, see our SQL injection, cross-site scripting and patch management entries.

Frequently Asked Questions.

Which OpenEMR version fixes all five of these vulnerabilities?

OpenEMR 8.4.0. It includes the CVE-2026-124445 fix from its own release plus every fix already shipped in 8.3.0, including CVE-2026-124469, CVE-2026-124463, CVE-2026-124450 and CVE-2026-124490.

Is CVE-2026-124463 as severe as the other four flaws in this patch cycle?

OpenEMR's own release notes and the GitHub advisory rate it High, one band under the other four, which OpenEMR rates Critical. VulnCheck's CVSS v4.0 score of 9.3 falls in the Critical range, but its CVSS v3.1 score of 8.7 is High.

Do these flaws need administrator access to exploit?

No. The advisories say CVE-2026-124469 and CVE-2026-124463 need only the permissions a default install grants to low-privileged clinical roles. CVE-2026-124445 needs only a captured one-time portal link, not a login.

Are any of these five OpenEMR flaws listed as actively exploited?

None of the five is in the CISA Known Exploited Vulnerabilities catalog as of version 2026.11.06.

Sources

  1. 1 NVD record for CVE-2026-124469
  2. 2 NVD record for CVE-2026-124445
  3. 3 NVD record for CVE-2026-124463
  4. 4 GHSA-cg8c-2v5q-29g7, authenticated SQL injection in the Fee Sheet inventory check
  5. 5 GHSA-xg3m-9pfq-c8r6, OpenEMR OneTimeAuth token replay and PIN brute force
  6. 6 GHSA-rc6m-6pq4-r69x, OpenEMR CAMOS Rx print stored XSS
  7. 7 OpenEMR 8.3.0 release notes
  8. 8 OpenEMR 8.4.0 release notes
Share