In xml.rs in GNOME librsvg before 2.46.2, a crafted SVG file with nested patterns can cause denial of service when passed to the library for processing. The attacker constructs pattern elements so that the number of final rendered objects grows exponentially.
Created chromium tracking bugs for this issue:
Affects: epel-all [bug 1797611]
Affects: fedora-all [bug 1797610]
Created firefox tracking bugs for this issue:
Affects: fedora-all [bug 1797613]
Created librsvg2 tracking bugs for this issue:
Affects: fedora-all [bug 1797609]
Created thunderbird tracking bugs for this issue:
Affects: fedora-all [bug 1797614]
Upstream commit: https://gitlab.gnome.org/GNOME/librsvg/commit/572f95f739529b865e2717664d6fefcef9493135
Reproducer available at:
Mozilla bug for this flaw:
This flaw is similar to billion laughs. A specially-crafted XML file can cause librsvg to consume excessive memory and result in denial of service. This flaw also affects browsers. Currently Mozilla and Google are working on updates for Firefox and Chromium browser respectively.
This flaw is triggered when untrusted XML files are parsed with applications compiled with librsvg2 library. Applications which do not parse untrusted XML files are not affected by this flaw.
Marked Firefox and Thunderbird as "Will not fix": the reproducers on upstream bug still consume vast amounts of memory in current versions, but there seems to be no intention there to apply a fix. In my tests I was able to close the affected tab and restore operation so the impact is not permanent, but it will deny service to the tab that loads the svg.
Upstream chromium bug is closed as "wontfix": https://bugs.chromium.org/p/chromium/issues/detail?id=617891 - similar situation to Mozilla: denial of service to the impacted tab, but that tab can be closed and service restored.
This bug is now closed. Further updates for individual products will be reflected on the CVE page(s):
This issue has been addressed in the following products:
Red Hat Enterprise Linux 8
Via RHSA-2020:4709 https://access.redhat.com/errata/RHSA-2020:4709