Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en FreeRDP (CVE-2026-26965)

Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-787 Escritura fuera de límites
Fecha de publicación:
25/02/2026
Última modificación:
27/02/2026

Descripción

FreeRDP es una implementación gratuita del Protocolo de Escritorio Remoto. Antes de la versión 3.23.0, en la ruta de decodificación planar RLE, planar_decompress_plane_rle() escribe en pDstData en ((nYDst+y) * nDstStep) + (4*nXDst) + nChannel sin verificar que (nYDst+nSrcHeight) encaje en la altura de destino o que (nXDst+nSrcWidth) encaje en el paso de destino. Cuando TempFormat != DstFormat, pDstData se convierte en planar->pTempData (dimensionado para el escritorio), mientras que nYDst solo se valida contra la superficie mediante is_within_surface(). Un servidor RDP malicioso puede explotar esto para realizar una escritura fuera de límites en el heap con un desplazamiento y datos de píxeles controlados por el atacante en cualquier cliente FreeRDP que se conecte. La escritura OOB alcanza hasta 132.096 bytes más allá del final del búfer temporal, y en el heap brk (escritorio ? 128×128), el puntero de función decode de una estructura NSC_CONTEXT adyacente se sobrescribe con datos de píxeles controlados por el atacante — corrupción relevante para el flujo de control (puntero de función sobrescrito) demostrada bajo un diseño de heap determinista (nsc->decode = 0xFF414141FF414141). La versión 3.23.0 corrige la vulnerabilidad.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:freerdp:freerdp:*:*:*:*:*:*:*:* 3.23.0 (excluyendo)