GNU C Library up to 2.43 Unicode Character libio/wgenops.c _IO_wdefault_pbackfail buffer under-read

| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 6.4 | $0-$5k | 0.00 |
Summary
A vulnerability described as problematic has been identified in GNU C Library up to 2.43. Affected by this issue is the function _IO_wdefault_pbackfail of the file libio/wgenops.c of the component Unicode Character Handler. Such manipulation leads to buffer under-read.
This vulnerability is referenced as CVE-2026-5928. The attack can only be performed from a local environment. No exploit is available.
Details
A vulnerability was found in GNU C Library up to 2.43. It has been rated as problematic. Affected by this issue is the function _IO_wdefault_pbackfail of the file libio/wgenops.c of the component Unicode Character Handler. The manipulation with an unknown input leads to a buffer under-read vulnerability. Using CWE to declare the problem leads to CWE-127. The product reads from a buffer using buffer access mechanisms such as indexes or pointers that reference memory locations prior to the targeted buffer. Impacted is confidentiality, integrity, and availability. CVE summarizes:
Calling the ungetwc function on a FILE stream with wide characters encoded in a character set that has overlaps between its single byte and multi-byte character encodings, in the GNU C Library version 2.43 or earlier, may result in an attempt to read bytes before an allocated buffer, potentially resulting in unintentional disclosure of neighboring data in the heap, or a program crash. A bug in the wide character pushback implementation (_IO_wdefault_pbackfail in libio/wgenops.c) causes ungetwc() to operate on the regular character buffer (fp->_IO_read_ptr) instead of the actual wide-stream read pointer (fp->_wide_data->_IO_read_ptr). The program crash may happen in cases where fp->_IO_read_ptr is not initialized and hence points to NULL. The buffer under-read requires a special situation where the input character encoding is such that there are overlaps between single byte representations and multibyte representations in that encoding, resulting in spurious matches. The spurious match case is not possible in the standard Unicode character sets.
The weakness was published by Rocket Ma. The advisory is available at sourceware.org. This vulnerability is handled as CVE-2026-5928 since 04/09/2026. The exploitation is known to be easy. Local access is required to approach this attack. Technical details are known, but there is no available exploit.
The vulnerability scanner Nessus provides a plugin with the ID 308161 (Linux Distros Unpatched Vulnerability : CVE-2026-5928), which helps to determine the existence of the flaw in a target environment.
There is no information about possible countermeasures known. It may be suggested to replace the affected object with an alternative product.
The vulnerability is also documented in the databases at Tenable (308161) and CERT Bund (WID-SEC-2026-1190). If you want to get best quality of vulnerability data, you may have to visit VulDB.
Affected
- Red Hat Enterprise Linux
- Fedora Linux
- SUSE Linux
- Oracle Linux
- SUSE openSUSE
- RESF Rocky Linux
- Open Source GNU libc
Product
Type
Vendor
Name
Version
- 2.0
- 2.1
- 2.2
- 2.3
- 2.4
- 2.5
- 2.6
- 2.7
- 2.8
- 2.9
- 2.10
- 2.11
- 2.12
- 2.13
- 2.14
- 2.15
- 2.16
- 2.17
- 2.18
- 2.19
- 2.20
- 2.21
- 2.22
- 2.23
- 2.24
- 2.25
- 2.26
- 2.27
- 2.28
- 2.29
- 2.30
- 2.31
- 2.32
- 2.33
- 2.34
- 2.35
- 2.36
- 2.37
- 2.38
- 2.39
- 2.40
- 2.41
- 2.42
- 2.43
License
Website
- Vendor: https://www.gnu.org/
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔒VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 6.4VulDB Meta Temp Score: 6.4
VulDB Base Score: 5.3
VulDB Temp Score: 5.3
VulDB Vector: 🔒
VulDB Reliability: 🔍
ADP CISA Base Score: 7.5
ADP CISA Vector: 🔒
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔒
VulDB Temp Score: 🔒
VulDB Reliability: 🔍
Exploiting
Class: Buffer under-readCWE: CWE-127 / CWE-119
CAPEC: 🔒
ATT&CK: 🔒
Physical: Partially
Local: Yes
Remote: No
Availability: 🔒
Status: Not defined
EPSS Score: 🔒
EPSS Percentile: 🔒
Price Prediction: 🔍
Current Price Estimation: 🔒
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 308161
Nessus Name: Linux Distros Unpatched Vulnerability : CVE-2026-5928
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: no mitigation knownStatus: 🔍
0-Day Time: 🔒
Timeline
04/09/2026 CVE reserved04/21/2026 Advisory disclosed
04/21/2026 VulDB entry created
07/17/2026 VulDB entry last update
Sources
Vendor: gnu.orgAdvisory: sourceware.org
Researcher: Rocket Ma
Status: Not defined
CVE: CVE-2026-5928 (🔒)
GCVE (CVE): GCVE-0-2026-5928
GCVE (VulDB): GCVE-100-358370
CERT Bund: WID-SEC-2026-1190 - GNU libc: Mehrere Schwachstellen
Entry
Created: 04/21/2026 06:46Updated: 07/17/2026 01:24
Changes: 04/21/2026 06:46 (56), 04/21/2026 12:45 (6), 04/21/2026 23:28 (2), 07/01/2026 13:44 (2), 07/17/2026 01:24 (11)
Complete: 🔍
Cache ID: 216::103
If you want to get best quality of vulnerability data, you may have to visit VulDB.
No comments yet. Languages: en.
Please log in to comment.