VULNERABILIDAD
CVE-2026-102941 Pánico en IsSafeURL de gomarkdown/markdown con URL cortas
Antes de 0.0.0-20260724235538-61af6e1e6971, parser.IsSafeURL en parser/parser.go corta url[:nPath] antes de la comprobación len(url) = nPath. Un destino corto provoca un pánico por límites de slice cuando el bucle llega a un prefijo de ruta relativa con len(url) nPath y cap(url) nPath. El destino de un byte / es un contraejemplo explícito sin pánico porque coincide con la primera ruta válida y retorna antes de cortar un prefijo más largo; casos demostrados incluyen destinos vacío, . y ... El pánico es alcanzable…
Alerta de Nureq Monitor
Detectada 16 OCT · 13:34
CVSS 3.1
7.5ALTAPROBABILIDAD DE EXPLOTACIÓN (EPSS)
0,3 % PERCENTIL 19
EXPLOTACIÓN ACTIVA
No confirmada
EXPLOIT PÚBLICO
No conocido
Qué es CVE-2026-102941
Antes de 0.0.0-20260724235538-61af6e1e6971, parser.IsSafeURL en parser/parser.go corta url[:nPath] antes de la comprobación len(url) = nPath. Un destino corto provoca un pánico por límites de slice cuando el bucle llega a un prefijo de ruta relativa con len(url) nPath y cap(url) nPath. El destino de un byte / es un contraejemplo explícito sin pánico porque coincide con la primera ruta válida y retorna antes de cortar un prefijo más largo; casos demostrados incluyen destinos vacío, . y ... El pánico es alcanzable…
Productos y versiones afectadas
gomarkdown markdown
Qué hacer
- Verificá si usás markdown y en qué versión: el rango afectado figura arriba.
- Actualizá a la versión corregida que indique el fabricante en su aviso (ver referencias) o aplicá la mitigación que publique.
- Revisá registros y accesos de los sistemas expuestos para descartar que se haya aprovechado antes de corregir.
Calculadora CVSS
CVSS 3.1 · 7.5 ALTA
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- VECTOR DE ATAQUE (AV)
- Red
- COMPLEJIDAD DEL ATAQUE (AC)
- Baja
- PRIVILEGIOS REQUERIDOS (PR)
- Ninguno
- INTERACCIÓN DEL USUARIO (UI)
- Ninguna
- ALCANCE (S)
- Sin cambio
- CONFIDENCIALIDAD (C)
- Ninguna
- INTEGRIDAD (I)
- Ninguna
- DISPONIBILIDAD (A)
- Alta
Abrir la calculadora completa →
Descripción original
The package github.com/gomarkdown/markdown is a Go library for parsing Markdown text and rendering as HTML. Prior to 0.0.0-20260724235538-61af6e1e6971, parser.IsSafeURL in parser/parser.go slices url[:nPath] before the len(url) >= nPath guard. A short destination causes a slice-bounds panic when the loop reaches a relative-path prefix for which len(url) < nPath and cap(url) < nPath. The one-byte destination / is an explicit non-panic counterexample because it matches the first valid path and returns before a longer prefix is sliced. Demonstrated panic cases include empty, ., and .. destinations under those conditions. The panic is reachable when markdown.ToHTML renders untrusted Markdown with html.Safelink enabled, including an empty link destination, and is also reachable by callers that pass a short attacker-controlled URL directly to the exported parser.IsSafeURL function. An uncaught panic can terminate the calling process and cause denial of service. This issue is fixed in 0.0.0-20260724235538-61af6e1e6971.
Referencias
- github.com/gomarkdown/markdown/security/advisories/GHSA-cv23-7vc5-jfh7X_REFSOURCE_CONFIRM
- github.com/gomarkdown/markdown/commit/61af6e1e69710c5ca13cfbaaaa1bc11bc763a8a9X_REFSOURCE_MISC
Historial de la alerta
- VULNERABILIDAD Nueva vulnerabilidad detectada.
CÓMO SE HIZOResumen traducido automáticamente al español a partir de la descripción original. Ante dudas, la descripción original y las referencias del fabricante son la fuente de verdad. Cómo funciona.