CVE Catalog
EnglishPolski(English translation not available - showing Polish)

CVE-2026-29112

High
Published: Translated: NVD NIST

Summary

Biblioteka DiceBear do tworzenia awatarów miała podatność w funkcji `ensureSize()` przed wersją 9.4.0, która odczytywała atrybuty `width` i `height` z wejściowego SVG. Atakujący mógł dostarczyć spreparowane SVG z ekstremalnie dużymi wymiarami, co prowadziło do nadmiernego przydzielania pamięci i w rezultacie do odmowy usługi.

Risk Assessment

Podatność ta może prowadzić do poważnych problemów z dostępnością aplikacji serwerowych, które przetwarzają niezaufane lub dostarczone przez użytkowników SVG. Aplikacje, które konwertują jedynie własnoręcznie generowane awatary, są mniej narażone, ale nadal powinny zaktualizować bibliotekę.

Recommendation

Zaleca się aktualizację do wersji 9.4.0, w której wprowadzono zmiany w funkcji `ensureSize()`, eliminując odczyt atrybutów SVG do określenia rozmiaru wyjściowego. Nowa opcja `size` kontroluje wymiary wyjściowe, co zwiększa bezpieczeństwo aplikacji.

Related vulnerabilities

Original NVD description (English source)

DiceBear is an avatar library for designers and developers. Prior to version 9.4.0, the `ensureSize()` function in `@dicebear/converter` read the `width` and `height` attributes from the input SVG to determine the output canvas size for rasterization (PNG, JPEG, WebP, AVIF). An attacker who can supply a crafted SVG with extremely large dimensions (e.g. `width="999999999"`) could force the server to allocate excessive memory, leading to denial of service. This primarily affects server-side applications that pass untrusted or user-supplied SVGs to the converter's `toPng()`, `toJpeg()`, `toWebp()`, or `toAvif()` functions. Applications that only convert self-generated DiceBear avatars are not practically exploitable, but are still recommended to upgrade. This is fixed in version 9.4.0. The `ensureSize()` function no longer reads SVG attributes to determine output size. Instead, a new `size` option (default: 512, max: 2048) controls the output dimensions. Invalid values (NaN, negative, zer

Vulnerability data from NVD (NIST) · CISA KEV · EPSS