Saltar al contenido
DUPIN
ALERTAS · EN VIVO
Contacto

VULNERABILIDADDetectada 30 OCT · 17:59

CVE-2026-62250 Asignación sin límite en la decodificación de entidades DWG pre-R13 de LibreDWG

En LibreDWG, versiones anteriores a 0.14.8413, un archivo DWG pre-R13 manipulado puede hacer que decode_preR13_entities() en src/decode.c entre en un bucle no terminante que asigna un objeto nuevo en cada iteración. El tamaño se calcula a partir de los límites entities_start y entities_end controlados por el archivo y no se recalcula, lo que provoca asignación repetida de entradas dwg-object hasta que falla la asignación o el proceso es terminado por falta de memoria. Corregido en 0.14.8413.

5.5MEDIA

CVSS 3.1

  • Probabilidad de explotación · EPSS del 09/110,2 % · percentil 5
  • Explotada activamenteNo confirmada
  • Exploit públicoNo conocido

Afectados

  • LibreDWG libredwg

    < 0.14.8413

Qué hacer

  1. Verificá si usás libredwg y en qué versión.
  2. Actualizá a la versión corregida que indique el fabricante en su aviso o aplicá su mitigación.
  3. Revisá registros y accesos de los sistemas expuestos para descartar un uso previo.

Calculadora CVSS

CVSS 3.1 · 5.5 MEDIA

CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:H

  • Vector de ataqueLocal
  • Complejidad del ataqueBaja
  • Privilegios requeridosNinguno
  • Interacción del usuarioRequerida
  • AlcanceSin cambio
  • ConfidencialidadNinguna
  • IntegridadNinguna
  • DisponibilidadAlta

Descripción original

LibreDWG is a free C library to read and write DWG files. Prior to 0.14.8413, a crafted pre-R13 DWG can make `decode_preR13_entities()` in `src/decode.c` enter a nonterminating loop that allocates a new object each iteration. `decode_preR13` in `src/decode_r11.c` computes `size` from the raw file-controlled `entities_start` and `entities_end` header bounds; the callee clamps `end` to `dat->size` but never recalculates `size`. At `end` of input, `bit_read_RC` and `bit_read_RS` stop advancing `dat->byte`, the overflow guard fails because `end` equals `dat->size`, and the no-advance check compares against `oldpos` saved before the loop instead of the previous iteration. This leaves repeated allocation of `dwg->object` entries until allocation fails or the process is OOM-killed, not merely a constant-memory CPU hang. The defect remains after the clamping and no-progress changes associated with the earlier issue 1131. Applications and tools calling `dwg_read_file()` on untrusted files, including `dwg2dxf`, `dwgread` and `dwg2svg`, can suffer denial of service when a user or automated pipeline opens a malformed file; no attacker credentials are required. This issue is fixed in repository nightly version 0.14.8413.

Referencias (4)

Resumen traducido automáticamente de la descripción original. Fuente: Nureq Monitor. Cómo funciona.

DUPIN · CONTACTO

Contanos tu caso

El mensaje ya va armado: podés cambiarlo.

También podés escribir a [email protected]. Usamos tus datos solo para responderte.