Loop with Unreachable Exit Condition ('Infinite Loop') Affecting gdk-pixbuf package, versions <2.42.2-r0


Severity

Recommended
0.0
medium
0
10

Snyk's Security Team recommends NVD's CVSS assessment. Learn more

Threat Intelligence

EPSS
0.17% (55th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-ALPINE321-GDKPIXBUF-8483489
  • published6 Dec 2024
  • disclosed26 Dec 2020

Introduced: 26 Dec 2020

CVE-2020-29385  (opens in a new tab)
CWE-835  (opens in a new tab)

How to fix?

Upgrade Alpine:3.21 gdk-pixbuf to version 2.42.2-r0 or higher.

NVD Description

Note: Versions mentioned in the description apply only to the upstream gdk-pixbuf package and not the gdk-pixbuf package as distributed by Alpine. See How to fix? for Alpine:3.21 relevant fixed versions and status.

GNOME gdk-pixbuf (aka GdkPixbuf) before 2.42.2 allows a denial of service (infinite loop) in lzw.c in the function write_indexes. if c->self_code equals 10, self->code_table[10].extends will assign the value 11 to c. The next execution in the loop will assign self->code_table[11].extends to c, which will give the value of 10. This will make the loop run infinitely. This bug can, for example, be triggered by calling this function with a GIF image with LZW compression that is crafted in a special way.

CVSS Scores

version 3.1