CVE-2026-11826

HIGHPre-NVD 8.88.8
EchelonGraph scoreHIGH confidence

Score 8.8 from GitHub Security Advisory (severity: HIGH) published 2026-07-18. the CNA's CVSS baseline 8.8; sources differ by 0.0.

Triggered by: GitHub Security Advisory CVSS
Sources: cna:vulncheck, epss, ghsa
Trending — 4 sources updated this week
8.8
EchelonGraph verdictPlan a fixSerious severity, but no confirmed exploitation yet.
  • High severity, but no confirmed exploitation yet
CISA-KEV: Not listedEPSS: 0%CVSS: 8.8Exploit: NoneExposed: 0

No vendor fix yet — apply a workaround or compensating control (WAF / firewall / segmentation) and watch for a patch.

OpenPLC_v3 contains a heap-based buffer overflow in the getData() function in webserver/core/modbus_master.cpp. getData() reads characters between two delimiters into a caller-supplied buffer with no size parameter and no bounds check. In parseConfig() the function is invoked with the 100-byte heap-allocated MB_device.dev_name field. An authenticated attacker with access to the OpenPLC web interface can send a crafted HTTP POST to the /modbus endpoint with an oversized device_name value; the value is persisted to mbconfig.cfg and parsed on load, overflowing dev_name and overwriting adjacent struct fields (protocol at offset 108, dev_address at offset 109, ip_port at offset 210). A 200-byte payload writes 100 bytes past the allocation. The result is heap corruption leading to runtime crash and denial of service of the PLC process control loop, with attacker-controlled overwrite of adjacent configuration fields. The upstream repository was archived on 2026-04-04 and no fix is expected; the vendor has confirmed the issue does not affect OpenPLC Runtime v4.

CVSS v3
8.8
EG Score
8.8(high)
EG Risk
40(Track)
EG Risk 40/100SSVC: Track

EG Risk is EchelonGraph's 0–100 priority score: it fuses intrinsic severity with real-world exploitation and automatability so you can rank equal-severity CVEs and fix the most dangerous first. Higher = act sooner. Distinct from the 0–10 EG Score (severity).

How it’s computed
Severity88% × 45%
Exploitation0% × 40%
Automatability0% × 15%
Action: Routine — remediate on your standard cadence.
EPSS
34.5%
KEV
Not listed

Published

July 18, 2026

Last Modified

July 23, 2026

Advisory Details (4)

Auto-updated Jul 18, 2026
Upstream fix merged — awaiting tagged release. Sources: github_commit.
generic

OpenPLC_v3 Heap-Based Buffer Overflow in Modbus Master getData() | Advisories | VulnCheck

https://www.vulncheck.com/advisories/openplc-v3-heap-based-buffer-overflow-in-modbus-master-getdata
github_commit

commit b4702061dc14 (thiagoralves/OpenPLC_v3)

Fix landed in thiagoralves/OpenPLC_v3 commit b4702061dc14 — awaiting tagged release

https://github.com/thiagoralves/OpenPLC_v3/commit/b4702061dc14d1024856f71b4543298d77007b88
generic

GitHub - thiagoralves/OpenPLC_v3: OpenPLC Runtime version 3 · GitHub

https://github.com/thiagoralves/OpenPLC_v3
generic

Security Vulnerability Report: Heap Buffer Overflow in getData() — openplcproject/OpenPLC_v3 (CWE-122, CVSS 8.8 HIGH) · GitHub

https://gist.github.com/Shukhrat-03/5cf1825b72e485ef98a32958dfbc611a#security-vulnerability-report

Vendor Advisories for CVE-2026-11826(1)

These vendors published their own advisory mentioning this CVE — often with vendor-specific remediation steps + affected product lists not in NVD.

Weakness Classification(1)

MITRE Common Weakness Enumeration — the root-cause categories this CVE belongs to.

Data Freshness Timeline

(refreshed 13× in last 7d / 13× in last 30d)

Each row is a source pipeline that fetched or updated this CVE on that date, with what changed. For example, "NVD update" means NVD published or revised its analysis for this CVE; "MITRE cvelistV5" means we ingested or refreshed it from the CNA feed. Most recent first.

  1. 2026-07-24 14:17 UTCEPSS rescore
  2. 2026-07-23 14:18 UTCEPSS rescore
  3. 2026-07-23 03:04 UTCEG score recompute
  4. 2026-07-22 14:08 UTCEPSS rescore
  5. 2026-07-21 15:24 UTCEPSS rescore
  6. 2026-07-20 17:52 UTCEG score recompute
  7. 2026-07-20 17:52 UTCGHSA enrichment
  8. 2026-07-20 17:08 UTCEPSS rescore
  9. 2026-07-19 14:30 UTCEPSS rescore
  10. 2026-07-18 16:05 UTCEG score recompute
  11. 2026-07-18 16:05 UTCGHSA enrichment
  12. 2026-07-18 14:10 UTCEG score recompute
  13. 2026-07-18 14:09 UTCMITRE cvelistV5first tracked

Frequently asked(5)

What is CVE-2026-11826?
CVE-2026-11826 is a high vulnerability published on July 18, 2026. OpenPLCv3 contains a heap-based buffer overflow in the getData() function in webserver/core/modbusmaster.cpp. getData() reads characters between two delimiters into a caller-supplied buffer with no size parameter and no bounds check. In parseConfig() the function is invoked with the 100-byte…
When was CVE-2026-11826 disclosed?
CVE-2026-11826 was first published in the National Vulnerability Database on July 18, 2026, with the most recent update on July 23, 2026. EchelonGraph re-ingests CVE updates from NVD on a 2-hour cycle, so this page reflects the latest published state.
Is CVE-2026-11826 actively exploited?
CVE-2026-11826 is not currently on CISA's Known Exploited Vulnerabilities catalog. FIRST EPSS estimates a 34.5% percentile likelihood of exploitation in the next 30 days — higher percentiles indicate greater predicted risk.
What is the CVSS score of CVE-2026-11826?
CVE-2026-11826 has a CVSS v3 base score of 8.8 (NVD).
How do I remediate CVE-2026-11826?
Patch to the fixed version published by the affected vendor. Where vendor advisories exist for CVE-2026-11826, EchelonGraph cross-links them in the Vendor Advisories panel below — those typically contain the canonical remediation steps, fixed version numbers, and any vendor-specific mitigations.

Dependency Blast Radius

Explore the affected products and dependency analysis for CVE-2026-11826

Explore →

Is Your Infrastructure Affected by CVE-2026-11826?

EchelonGraph automatically scans your cloud infrastructure and maps CVE exposure using blast radius analysis.