Description
RustDesk versions before 1.4.7 contain an uncontrolled speculative memory allocation vulnerability in BytesCodec. Before authentication, the decoder trusts the payload length encoded in a four-byte frame header and reserves that amount before receiving the payload. A crafted header can request up to 1,073,741,823 bytes of capacity, allowing unauthenticated attackers to use concurrent TCP connections to cause memory exhaustion and denial of service. The fix caps header-triggered speculative preallocation at 256 KiB.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
rustdesk rustdesk
Default version status: unaffected
0 to < 1.4.7affected
pkg:github/rustdesk/rustdeskReferences
- https://github.com/rustdesk/rustdesk/releases/tag/1.4.7 ↗
- https://github.com/rustdesk/hbb_common/commit/547da54b4ee58eed47163fbd47edb4639e3d88de ↗
- https://github.com/rustdesk/rustdesk/commit/518296f2570d107ad416f29ade5fcce3177f4115 ↗
- https://www.vulncheck.com/advisories/rustdesk-uncontrolled-memory-allocation-dos-via-bytescodec ↗