CVE-2026-115819 · Runtime
NO FIX YET
Calling the wide scanf functions with a %s or %[ conversion into a char array can write one null byte past the end of that array when the converted string exactly fills it. The extra byte may corrupt adjacent data or crash the process, and an attacker supplying the input can trigger it.
first public Nov 11, 2026 · 1 source
Could this affect your app?
Free first check from your website. Connect your repo for the full answer.
Only programs built on GNU C Library 2.2 through 2.44 that call a wide scanf function with a %s or %[ conversion (without the l modifier) storing into a narrow char array are exposed. The narrow scanf functions, %ls and %l[ into wchar_t arrays, and the a and m modifiers are not affected, and this pattern is uncommon. The issue affects all architectures supported by glibc.
Not affected if glibc-outside-2.2-2.44, narrow-scanf-only, no-wide-scanf-into-char-array
Who cares c, glibc, linux, self-hosted
ldd --version on each host and container.swscanf, fwscanf, wscanf, vswscanf, vfwscanf or vwscanf that use %s or %[ and store into a narrow char array.No fix yet, per the sources.
Calling the wide scanf family of functions (swscanf, fwscanf, wscanf, vswscanf, vfwscanf and vwscanf) with a %s or %[ conversion without the 'l' length modifier in the GNU C Library version 2.2 to version 2.44 writes an extra null byte one past the end of the destination array when the converted multibyte string and its terminating null byte exactly fill that array.
These conversions store each wide input character into the caller's char array as a multibyte sequence. The conversion ends with the sequence that returns to the initial shift state, which also stores the terminating null byte, and the functions then append a second null byte. A destination sized for the converted string and one terminator, as the C standard requires the caller to provide, is therefore written one byte past its end. The out-of-bounds byte is always a null byte, which may corrupt adjacent data or crash the process. An attacker who supplies the input can trigger the overflow with a string whose converted length exactly fills the destination.
The narrow scanf functions, the %ls and %l[ conversions into a wchar_t array, and the 'a' and 'm' allocation modifiers are not affected, and storing a wide scanf conversion into a narrow char array is uncommon. This issue affects all architectures and ABIs supported by the GNU C Library.
Check it with your coding agent
It reads this page and tells you if your code is affected.
Are you affected?
Ask from here. InfraStack checks the affected versions against your stack and answers in your inbox.
InfraStack checks the affected versions against your stack and answers in Slack, with the evidence and the fix.
NVD data is provided by NIST and is public domain. Posts quoted belong to their authors.