CVE-2026-33952FreeRDP是远程桌面协议的免费实现。在3.24.2版本之前,从网络读取的未经验证的auth_length字段会触发WINPR_ASSERT()失败,导致通过恶意RDP网关连接的FreeRDP客户端崩溃。这是一个影响所有使用RPC-over-HTTP网关传输的客户端的预认证拒绝服务漏洞。该断言在默认发布版本中处于活动状态,目前已在3.24.2版本中修复。
该漏洞源于FreeRDP在处理RPC-over-HTTP网关传输数据时,存在输入验证缺失问题。具体来说,当客户端通过恶意RDP网关连接时,从网络读取的auth_length字段未经过严格校验。在rts_read_auth_verifier_no_checks()函数处理该字段时,非法的长度值触发了内部宏WINPR_ASSERT()的失败。由于FreeRDP的默认发布构建通常启用了WITH_VERBOSE_WINPR_ASSERT选项,这种断言失败会导致程序直接抛出SIGABRT信号,进而造成客户端崩溃。攻击者无需通过身份认证即可利用此漏洞,只需诱导或等待受害者连接至恶意的网关服务器即可发起攻击。此漏洞属于预认证阶段的拒绝服务,严重影响了FreeRDP客户端在网络环境中的可用性。