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

Vulnerabilidad en gmrtd (CVE-2026-24738)

Gravedad CVSS v4.0:
MEDIA
Tipo:
CWE-400 Consumo de recursos no controlado (Agotamiento de recursos)
Fecha de publicación:
27/01/2026
Última modificación:
04/03/2026

Descripción

gmrtd es una librería Go para leer Documentos de Viaje de Lectura Mecánica (MRTDs). Antes de la versión 0.17.2, ReadFile acepta TLVs con longitudes que pueden oscilar hasta 4GB, lo que puede causar un consumo de recursos sin restricciones tanto en memoria como en ciclos de CPU. ReadFile puede consumir un TLV extendido con longitudes muy superiores a lo que estaría disponible en los ICs. Puede aceptar algo de hasta 4GB, lo que requeriría demasiadas iteraciones en bloques de 256 bytes, y también intentaría asignar memoria que podría no estar disponible en entornos restringidos como los teléfonos. O si una API envía datos a ReadFile, el mismo problema se aplica. La lectura en bloques muy pequeños también bloquea la goroutine al aceptar datos durante un número muy grande de iteraciones. Los proyectos que utilizan la librería gmrtd para leer archivos de NFCs pueden experimentar ralentizaciones extremas o consumo de memoria. Un NFC malicioso puede simplemente comportarse como el transceptor simulado descrito anteriormente y, simplemente enviando bytes ficticios como cada bloque a leer, puede hacer que el hilo receptor no responda y llenar la memoria del sistema anfitrión. La versión 0.17.2 corrige el problema.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:gmrtd:gmrtd:*:*:*:*:*:go:*:* 0.17.2 (excluyendo)