diff --git a/advancecomp-CVE-2019-9210.patch b/advancecomp-CVE-2019-9210.patch index 5bb32a7..dc40bc8 100644 --- a/advancecomp-CVE-2019-9210.patch +++ b/advancecomp-CVE-2019-9210.patch @@ -83,3 +83,18 @@ index 55d16f5..3f5b49f 100644 cout << " width:" << be_uint32_read(data) << " height:" << be_uint32_read(data + 4); cout << " depth:" << (unsigned)data[8]; cout << " color_type:" << (unsigned)data[9]; +diff -up advancecomp-2.1/lib/png.c.me advancecomp-2.1/lib/png.c +--- advancecomp-2.1/lib/png.c.me 2019-03-06 21:38:19.099210846 +0100 ++++ advancecomp-2.1/lib/png.c 2019-03-06 21:38:49.193040592 +0100 +@@ -655,6 +655,11 @@ adv_error adv_png_read_ihdr( + } + *pix_pixel = pixel; + ++ if (width_align < width) { ++ error_unsupported_set("Invalid image size"); ++ goto err; ++ } ++ + if (data[10] != 0) { /* compression */ + error_unsupported_set("Unsupported compression, %d instead of 0", (unsigned)data[10]); + goto err; diff --git a/advancecomp.spec b/advancecomp.spec index ccba9c4..14b0f99 100644 --- a/advancecomp.spec +++ b/advancecomp.spec @@ -1,6 +1,6 @@ Name: advancecomp Version: 2.1 -Release: 9%{?dist} +Release: 10%{?dist} Summary: Recompression utilities for png, mng, zip and gz files License: GPLv3 URL: http://www.advancemame.it/ @@ -47,6 +47,9 @@ make install DESTDIR=%{buildroot} %{_mandir}/man1/* %changelog +* Wed Mar 06 2019 Than Ngo - 2.1-10 +- Backport, fix a buffer overflow with image of invalid size + * Fri Mar 01 2019 Than Ngo - 2.1-9 - fixed CVE-2019-9210 advancecomp: integer overflow in png_compress in pngex.cc