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

Vulnerabilidad en Cap'n Proto (CVE-2023-48230)

Gravedad CVSS v3.1:
CRÍTICA
Tipo:
CWE-787 Escritura fuera de límites
Fecha de publicación:
21/11/2023
Última modificación:
29/11/2023

Descripción

Cap'n Proto es un formato de intercambio de datos y un sistema RPC basado en capacidades. En las versiones 1.0 y 1.0.1, cuando se utiliza la librería HTTP KJ con la compresión WebSocket habilitada, un par remoto puede provocar una insuficiencia de datos del búfer. La insuficiencia de datos siempre escribe un valor constante que no está controlado por el atacante, lo que probablemente provoca un bloqueo y permite un ataque remoto de denegación de servicio. Es poco probable que la mayoría de los usuarios de Cap'n Proto y KJ tengan habilitada esta funcionalidad y, por lo tanto, es poco probable que se vean afectados. Los mantenedores sospechan que Cloudflare Workers Runtime se ve afectado. Si se utiliza KJ HTTP con la compresión WebSocket habilitada, un par malintencionado puede provocar una insuficiencia de datos en un búfer asignado en heap. KJ HTTP es una librería opcional incluida con Cap'n Proto, pero Cap'n Proto no la utiliza directamente. La compresión WebSocket está deshabilitada de forma predeterminada. Debe habilitarse mediante una configuración pasada a la librería HTTP KJ mediante `HttpClientSettings` o `HttpServerSettings`. Los bytes escritos fuera de los límites son siempre una cadena constante específica de 4 bytes `{ 0x00, 0x00, 0xFF, 0xFF }`. Debido a que el atacante no controla esta cadena, los mantenedores creen que es poco probable que sea posible la ejecución remota de código. Sin embargo, no se puede descartar. Esta funcionalidad apareció por primera vez en Cap'n Proto 1.0. Las versiones anteriores no se ven afectadas. Este problema se solucionó en Cap'n Proto 1.0.1.1.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:capnproto:capnproto:1.0.0:*:*:*:*:*:*:*
cpe:2.3:a:capnproto:capnproto:1.0.1:*:*:*:*:*:*:*