Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1000 CNY

100.0%

CVE-2026-31806— FreeRDP has a Heap Buffer Overflow in nsc_process_message() via Unchecked SURFACE_BITS_COMMAND Bitmap Dimensions

EPSS 0.03% · P9
Get alerts for future matching vulnerabilitiesLog in to subscribe

I. Basic Information for CVE-2026-31806

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
FreeRDP has a Heap Buffer Overflow in nsc_process_message() via Unchecked SURFACE_BITS_COMMAND Bitmap Dimensions
Source: NVD (National Vulnerability Database)
Vulnerability Description
FreeRDP is a free implementation of the Remote Desktop Protocol. Prior to 3.24.0, the gdi_surface_bits() function processes SURFACE_BITS_COMMAND messages sent by the RDP server. When the command is handled using NSCodec, the bmp.width and bmp.height values provided by the server are not properly validated against the actual desktop dimensions. A malicious RDP server can supply crafted bmp.width and bmp.height values that exceed the expected surface size. Because these values are used during bitmap decoding and memory operations without proper bounds checking, this can lead to a heap buffer overflow. Since the attacker can also control the associated pixel data transmitted by the server, the overflow may be exploitable to overwrite adjacent heap memory. This vulnerability is fixed in 3.24.0.
Source: NVD (National Vulnerability Database)
CVSS Information
N/A
Source: NVD (National Vulnerability Database)
Vulnerability Type
堆缓冲区溢出
Source: NVD (National Vulnerability Database)
Vulnerability Title
FreeRDP 安全漏洞
Source: CNNVD (China National Vulnerability Database)
Vulnerability Description
FreeRDP是FreeRDP团队的一款开源的远程桌面协议(RDP)的实现。 FreeRDP 3.24.0之前版本存在安全漏洞,该漏洞源于gdi_surface_bits函数未正确验证服务器提供的bmp.width和bmp.height值,可能导致堆缓冲区溢出。
Source: CNNVD (China National Vulnerability Database)
CVSS Information
N/A
Source: CNNVD (China National Vulnerability Database)
Vulnerability Type
N/A
Source: CNNVD (China National Vulnerability Database)

Affected Products

VendorProductAffected VersionsCPESubscribe
FreeRDPFreeRDP < 3.24.0 -

II. Public POCs for CVE-2026-31806

#POC DescriptionSource LinkShenlong Link
AI-Generated POCPremium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-31806

登录查看更多情报信息。

Same Patch Batch · FreeRDP · 2026-03-13 · 8 CVEs total

CVE-2026-318836.5 MEDIUMFreeRDP has a `size_t` underflow in ADPCM decoder leads to heap-buffer-overflow write
CVE-2026-318846.5 MEDIUMFreeRDP has a division-by-zero in ADPCM decoders when `nBlockAlign` is 0
CVE-2026-318856.5 MEDIUMFreeRDP has an out-of-bounds read in ADPCM decoders due to missing predictor/step_index bo
CVE-2026-297755.3 MEDIUMFreeRDP has a heap-buffer-overflow in bitmap_cache_put via OOB cacheId
CVE-2026-297745.3 MEDIUMFreeRDP has a heap-buffer-overflow in avc420_yuv_to_rgb via OOB regionRects
CVE-2026-297763.1 LOWFreeRDP has an Integer Underflow in update_read_cache_bitmap_order Function of FreeRDP's C
CVE-2026-31897FreeRDP has an out-of-bounds read in `freerdp_bitmap_decompress_planar`

IV. Related Vulnerabilities

V. Comments for CVE-2026-31806

No comments yet


Leave a comment