{"id":"UBUNTU-CVE-2026-121962","details":"FreeRDP before 3.32.2 contains a heap buffer overflow in transport_default_read_pdu when handling partial Early User Authorization reads during PROTOCOL_HYBRID_EX CredSSP. A malicious RDP server can split the four-byte EUA result into short reads that advance the stream pointer beyond the 16 KiB allocation, causing an out-of-bounds write and client denial of service.","modified":"2026-11-05T11:47:33.663650721Z","published":"2026-11-04T00:00:00Z","upstream":["CVE-2026-121962"],"references":[{"type":"REPORT","url":"https://ubuntu.com/security/CVE-2026-121962"},{"type":"REPORT","url":"https://www.cve.org/CVERecord?id=CVE-2026-121962"}],"affected":[{"package":{"name":"freerdp","ecosystem":"Ubuntu:16.04:LTS","purl":"pkg:deb/ubuntu/freerdp?arch=source&distro=xenial"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1","1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.2","1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.3","1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"],"ecosystem_specific":{"binaries":[{"binary_name":"freerdp-x11","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libfreerdp-cache1.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libfreerdp-client1.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libfreerdp-codec1.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libfreerdp-common1.1.0"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libfreerdp-core1.1"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libfreerdp-crypto1.1"},{"binary_name":"libfreerdp-gdi1.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libfreerdp-locale1.1"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libfreerdp-plugins-standard"},{"binary_name":"libfreerdp-primitives1.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libfreerdp-rail1.1"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libfreerdp-utils1.1"},{"binary_name":"libwinpr-asn1-0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libwinpr-bcrypt0.1"},{"binary_name":"libwinpr-credentials0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libwinpr-credui0.1"},{"binary_name":"libwinpr-crt0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-crypto0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-dsparse0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libwinpr-environment0.1"},{"binary_name":"libwinpr-error0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-file0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-handle0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-heap0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-input0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-interlocked0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-io0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libwinpr-library0.1"},{"binary_name":"libwinpr-path0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-pipe0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-pool0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-registry0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-rpc0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-sspi0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libwinpr-sspicli0.1"},{"binary_name":"libwinpr-synch0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-sysinfo0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libwinpr-thread0.1"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4","binary_name":"libwinpr-timezone0.1"},{"binary_name":"libwinpr-utils0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-winhttp0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libwinpr-winsock0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"},{"binary_name":"libxfreerdp-client1.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-5ubuntu1.4"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-121962.json"}},{"package":{"name":"freerdp","ecosystem":"Ubuntu:18.04:LTS","purl":"pkg:deb/ubuntu/freerdp?arch=source&distro=bionic"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"}]}],"versions":["1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1","1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.1","1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"],"ecosystem_specific":{"binaries":[{"binary_name":"freerdp-x11","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libfreerdp-cache1.1"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libfreerdp-client1.1"},{"binary_name":"libfreerdp-codec1.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libfreerdp-common1.1.0"},{"binary_name":"libfreerdp-core1.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libfreerdp-crypto1.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libfreerdp-gdi1.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libfreerdp-locale1.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libfreerdp-plugins-standard","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libfreerdp-primitives1.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libfreerdp-rail1.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libfreerdp-utils1.1"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libwinpr-asn1-0.1"},{"binary_name":"libwinpr-bcrypt0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libwinpr-credentials0.1"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libwinpr-credui0.1"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libwinpr-crt0.1"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libwinpr-crypto0.1"},{"binary_name":"libwinpr-dsparse0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libwinpr-environment0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libwinpr-error0.1"},{"binary_name":"libwinpr-file0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libwinpr-handle0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libwinpr-heap0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libwinpr-input0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libwinpr-interlocked0.1"},{"binary_name":"libwinpr-io0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libwinpr-library0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libwinpr-path0.1"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libwinpr-pipe0.1"},{"binary_name":"libwinpr-pool0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libwinpr-registry0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libwinpr-rpc0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libwinpr-sspi0.1"},{"binary_name":"libwinpr-sspicli0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libwinpr-synch0.1"},{"binary_name":"libwinpr-sysinfo0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libwinpr-thread0.1"},{"binary_name":"libwinpr-timezone0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libwinpr-utils0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libwinpr-winhttp0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_name":"libwinpr-winsock0.1","binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2"},{"binary_version":"1.1.0~git20140921.1.440916e+dfsg1-15ubuntu1.18.04.2","binary_name":"libxfreerdp-client1.1"}]},"database_specific":{"source":"https://github.com/canonical/ubuntu-security-notices/blob/main/osv/cve/2026/UBUNTU-CVE-2026-121962.json"}}],"schema_version":"1.9.2","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:H/A:H"},{"type":"Ubuntu","score":"medium"}]}