Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessSupply Latin-1 string to app input
-
DeliveryValue reaches String.arg() formatting
-
ExploitWrong buffer size computed
-
ExecutionOut-of-bounds read past buffer
-
ImpactLeak adjacent memory or crash UI
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Bounds checking, read limits
MITRE ATT&CK
1 technique across 1 tactic: Collection The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires a Qt for MCUs application that passes a Latin-1-optimized string containing Latin-1 characters into the QML String.arg() formatting function; the bug only triggers on that specific string optimization/character combination. Practical exploitation is LIMITED by the need for attacker-influenced data to actually reach String.arg() in the target application (integration-dependent, not a default network service), by the specific Latin-1 encoding precondition, and by the affected product being embedded MCU firmware rather than a general internet-facing server. The vendor vector claims no authentication or user interaction, but network reachability is application-specific and should be verified. |
| Impact | The single quantitative signal is the vendor (Qt) CVSS 4.0 base score of 8.8 (AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:H). No EPSS score, no CISA KEV listing, and no public exploit are present in the input, so exploitation status is 'no public exploit identified at time of analysis'. The high score is driven mostly by VA:H (availability) plus low confidentiality/integrity from an out-of-bounds READ (CWE-125). Two signals should be treated skeptically: (1) AV:N/PR:N/UI:N implies remote, unauthenticated, zero-interaction exploitation, yet the root cause is a buffer-size miscalculation inside the QML String.arg() formatting path on a microcontroller GUI framework - reaching it network-unattended requires that attacker-influenced Latin-1 string data actually flow into String.arg(), which is application- and integration-specific rather than a default network-facing service; verify the network reachability claim with Qt. (2) VI:L (integrity impact) is questionable for a pure read primitive and likely reflects corrupted/incorrect rendered output rather than true data tampering. Net: this is a real memory-safety defect worth patching in affected embedded builds, but the '8.8' is a vendor self-assessment whose network/unauthenticated framing overstates real-world reachability for most deployments. Absent EPSS/KEV/POC, this is not evidence of active or imminent widespread exploitation. |
| Exploit ScenarioDerived | In a Qt for MCUs application that formats attacker-influenced text through QML String.arg() where the string is Latin-1-optimized and contains Latin-1 characters, the incorrect buffer-size calculation causes the formatter to read past the buffer. This can leak adjacent memory contents into the rendered/returned output or crash the application on the microcontroller. No public proof-of-concept is identified in the provided data. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 29, 2026
Out-of-bounds read in Qt for MCUs occurs when an application passes a Latin-1-optimized string containing Latin-1 characters into the QML String.arg() formatting function, causing an incorrect buffer size calculation that yields incorrect formatting output and out-of-bounds memory reads. The vendor rates this 8.8 (CVSS 4.0) with high availability impact, and the vendor vector indicates unauthenticated (PR:N) network exploitation with no user interaction (UI:N), though practical exploitation is limited by the specific Latin-1 encoding precondition and the need for attacker-influenced data to actually reach String.arg() in embedded MCU firmware. No public exploit identified at time of analysis.
RemediationAI
No vendor-released patch identified at time of analysis. Monitor the vendor advisory at https://wiki.qt.io/List_of_known_vulnerabilities_in_Qt_products#CVE-2026-95509 for updates. Until a patch is available, apply the following compensating controls: avoid passing Latin-1-optimized strings that contain Latin-1 characters directly into String.arg(); explicitly convert or normalize such strings to a neutral encoding (e.g., UTF-8 or a plain string) before formatting, though this may increase memory usage on constrained MCUs. Validate and sanitize all data reaching String.arg() from external or untrusted sources, rejecting or escaping unexpected Latin-1 sequences; this may add processing overhead but reduces exposure. If feasible, disable the Latin-1 string optimization in the Qt for MCUs build configuration to eliminate the precondition, with a trade-off of potentially higher RAM/ROM use and reduced performance. Restrict network reachability of the MCU device and any QML input channels to trusted sources, since exploitation is application-specific and requires attacker-influenced data to reach the vulnerable function; this may limit intended functionality.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The vulnerability is rooted in Qt for MCUs, a Qt framework for resource-constrained microcontrollers where strings may be internally stored in a Latin-1 (8-bit) optimized representation to save memory. QML's String.arg() method performs placeholder-based formatting; when it receives a Latin-1-optimized string that contains Latin-1 characters, an incorrect buffer size calculation causes out-of-bounds reading. The root cause class is CWE-125 (Out-of-bounds Read), which can disclose adjacent memory contents (confidentiality low) and may crash the process (availability high, consistent with vendor VA:H and our assessed A:H). The affected CPE is cpe:2.3:a:qt:qt_for_mcus:*:*:*:*:*:*:*:*, covering all versions of Qt for MCUs. Our independent assessment (CVSS 3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:H) rates attack complexity as high and integrity impact as none, differing from the vendor's low integrity claim; the vendor vector claims no authentication (PR:N) and no user interaction (UI:N), but network reachability and exploitability are application-specific because the attacker-influenced string must reach String.arg().
Know when Qt gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:L/VA:H/SC:N/SI:N/SA:N
AC:H because a specific Latin-1-optimized string with Latin-1 characters is required; C:L for OOB read leakage, I:N (read-only), A:H for likely crash; AV:N kept but reachability is integration-dependent.
Primary rating from Vendor (Qt).
CVSS VectorVendor: Qt
Lifecycle Timeline
2DescriptionCVE.org
Strings optimized for Latin-1 displaying Latin-1 characters cause incorrect String.arg() formatting by an incorrect buffer size calculation, causing out-of-bounds reading.
Executive ViewAI
A high-severity memory-handling flaw in Qt for MCUs (CVE-2026-95509, CVSS 8.8) can cause embedded devices that format attacker-influenced text through QML string functions to expose memory contents or become unstable. Any organization that builds, ships, or operates firmware on Qt for MCUs - particularly in medical, industrial, automotive, and consumer IoT products - faces device-availability, data-exposure, and product-liability exposure, and the vendor has not released a fix. Because exploitation requires a narrow encoding precondition and attacker-controlled data reaching a specific formatting call, near-term risk is contained, but unpatched embedded fleets are slow to remediate once code paths are confirmed.
No vendor-released patch identified at time of analysis. Interim mitigations: strictly validate, length-limit, and canonicalize all external input before it reaches QML String.arg(); avoid passing Latin-1-optimized strings from untrusted sources into that function; restrict or segment network exposure and disable unnecessary remote input surfaces on affected devices; add memory-safety guard checks and fault handling around QML formatting paths to convert potential memory faults into controlled failures; monitor device telemetry for abnormal resets or crashes; and engage Qt commercial support for a fixed Qt for MCUs release, applying it as soon as it is available.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
A buffer overflow occurs when a program writes more data to a memory buffer than it was allocated to hold, causing the excess data to spill into adjacent memory regions.
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
setMarkdown in Qt before 5.14.2 has a use-after-free related to QTextMarkdownImporter::insertBlock. Rated critical sever
In Qt before 5.15.15, 6.x before 6.2.9, and 6.3.x through 6.5.x before 6.5.2, there can be an application crash in QXmlS
Qt 5.12.2 through 5.14.2, as used in unofficial builds of Mumble 1.3.0 and other products, mishandles OpenSSL's error qu
Uncontrolled search path in the QT Library before 5.14.0, 5.12.7 and 5.9.10 may allow an authenticated user to potential
An issue was discovered in the HTTP2 implementation in Qt before 5.15.17, 6.x before 6.2.11, 6.3.x through 6.5.x before
QAbstractOAuth in Qt Network Authorization in Qt before 5.15.17, 6.x before 6.2.13, 6.3.x through 6.5.x before 6.5.6, an
Qt for Android prior to 5.9.0 allows remote attackers to execute arbitrary OS commands via unspecified vectors. Rated cr
An issue was discovered in Qt before 5.11.3. Rated critical severity (CVSS 9.8), this vulnerability is remotely exploita
Stack-based buffer overflow in QXmlSimpleReader in Qt 4.8.5 allows remote attackers to cause a denial of service (applic
An issue was discovered in Qt before 5.11.3. Rated high severity (CVSS 8.8), this vulnerability is remotely exploitable,
QXmlStream in Qt 5.x before 5.11.3 has a double-free or corruption during parsing of a specially crafted illegal XML doc
Privilege escalation in the Qt Axivion Dashboard allows an authenticated low-privileged user to mint API tokens for othe
EUVD-2026-88732
GHSA-5q52-pjpv-x8mh
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB