FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, there is an out-of-bounds read in freerdpbitmapdecompress_planar when SrcSize is 0. The function dereferences *srcp (which points to pSrcData) without first verifying that SrcSize >= 1. When SrcSize is 0 and pSrcData is non-NULL, this reads one byte past the end of the source buffer. This vulnerability is fixed in 3.24.0.
{
"cwe_ids": [
"CWE-125"
],
"cna_assigner": "GitHub_M",
"osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/31xxx/CVE-2026-31897.json"
}{
"cpe": "cpe:2.3:a:freerdp:freerdp:*:*:*:*:*:*:*:*",
"extracted_events": [
{
"introduced": "0"
},
{
"fixed": "3.24.0"
}
],
"source": [
"CPE_RANGE",
"REFERENCES"
]
}"2026-07-21T23:32:07Z"
[
{
"signature_type": "Line",
"deprecated": false,
"digest": {
"threshold": 0.9,
"line_hashes": [
"60309189986959036555982896646675349476",
"300004662326701198965291068406591523009",
"251599977850943022519587089240539294421",
"81299917191461956069009337541882338870",
"263831880229568494626108583084657239227",
"29037745391140253297551202865346341416"
]
},
"signature_version": "v1",
"source": "https://github.com/freerdp/freerdp/commit/cd27c8faca0eeb0d4309cc5837dfdf3c42eba4e7",
"id": "CVE-2026-31897-af2f38ef",
"target": {
"file": "libfreerdp/codec/planar.c"
}
}
]
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-31897.json"