CVE-2026-22211: TinyOS <= 2.1.2 Global Buffer Overflow in printfUART
TinyOS versions up to and including 2.1.2 contain a global buffer overflow vulnerability in the printfUART formatted output implementation used within the ZigBee / IEEE 802.15.4 networking stack. The implementation formats output into a fixed-size global buffer and concatenates strings for %s format specifiers using strcat() without verifying remaining buffer capacity. When printfUART is invoked with a caller-controlled string longer than the available space, the unbounded sprintf/strcat sequence writes past the end of debugbuf, resulting in global memory corruption. This can cause denial of service, unintended behavior, or information disclosure via corrupted adjacent global state or UART output.
Security readout for executives and security teams
Plain-English summary
TinyOS has a buffer overflow in a debug-style UART printing function. In affected builds, oversized strings can corrupt global memory, potentially causing device instability, unintended behavior, or data leakage through corrupted output. The source bundle does not show active exploitation or a named fixed release.
Executive priority
Treat this as a moderate embedded-device risk. Prioritize environments where TinyOS devices support critical operations, are hard to patch, or process nearby untrusted wireless input. Do not assume emergency internet-wide exposure based on the provided evidence.
Technical view
In TinyOS through 2.1.2, printfUART formats into a fixed global buffer and appends %s data with strcat() without checking remaining capacity. A caller-controlled long string can overwrite debugbuf boundaries, corrupting adjacent global state. CVSS 4.0 is 5.1 with local attack vector and low availability impact.
Likely exposure
Exposure is most likely in embedded, sensor, or ZigBee/IEEE 802.15.4 firmware using TinyOS through 2.1.2 where untrusted or variable data reaches printfUART. Systems not using this function, not exposing relevant input paths, or using patched downstream code may have lower exposure.
Exploitation context
The bundle cites public technical details and an exploit-tagged Full Disclosure reference, but KEV is false and no source states active exploitation. The local attack vector and embedded deployment model reduce broad internet-scale risk, but compromised or malicious local inputs could still affect devices.
Researcher notes
Key uncertainty is fix status: the source bundle identifies affected TinyOS versions through 2.1.2 but does not name a patched release. Validation should focus on reachability of printfUART with caller-controlled %s data and whether downstream forks changed the vulnerable implementation.
Mitigation direction
Check TinyOS and downstream vendor guidance for an official patch or fixed release.
Inventory firmware images using TinyOS up to and including 2.1.2.
Remove or constrain printfUART use for untrusted or variable-length strings.
Apply downstream bounds-checking patches only after firmware regression testing.
Reduce production debug output where operationally feasible.
Validation and detection
Confirm TinyOS version and any downstream patches in deployed firmware.
Review whether printfUART is compiled into production builds.
Trace whether radio, UART, or application data reaches %s arguments.
Test representative firmware for crashes or corrupted debug output under oversized benign strings.
Record unsupported devices requiring compensating controls or replacement planning.
Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.
Potential ATT&CK relevance
Conservative CVE-to-ATT&CK context
These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.
ATT&CK lookup starting points
Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.
cwe · low confidence lookup
CWE-787: Exact CWE lookup
Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.
These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.
We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.
CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.
CWE-787 · source CWE mapping
Out-of-bounds Write
Out-of-bounds Write represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.