Saltar al contenido
DUPIN
ALERTAS · EN VIVO
Contacto

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.5ALTA

PROBABILIDAD 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

    • < 0.0.0-20260724235538-61af6e1e6971

Qué hacer

  1. Verificá si usás markdown y en qué versión: el rango afectado figura arriba.
  2. Actualizá a la versión corregida que indique el fabricante en su aviso (ver referencias) o aplicá la mitigación que publique.
  3. 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

Historial de la alerta

  1. 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.