From d009340407987eba23372368fee9ccdb2181784f Mon Sep 17 00:00:00 2001 From: wangkerong Date: Tue, 8 Nov 2022 03:14:59 +0000 Subject: [PATCH] fix CVE-2022-44638 (cherry picked from commit fbeea3db1590e7a5ae6e40f501a1995b3e9b23ae) --- backport-CVE-2022-44638.patch | 32 ++++++++++++++++++++++++++++++++ pixman.spec | 7 ++++++- 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 backport-CVE-2022-44638.patch diff --git a/backport-CVE-2022-44638.patch b/backport-CVE-2022-44638.patch new file mode 100644 index 0000000..de51a0a --- /dev/null +++ b/backport-CVE-2022-44638.patch @@ -0,0 +1,32 @@ +From a1f88e842e0216a5b4df1ab023caebe33c101395 Mon Sep 17 00:00:00 2001 +From: Matt Turner +Date: Wed, 2 Nov 2022 12:07:32 -0400 +Subject: [PATCH] Avoid integer overflow leading to out-of-bounds write + +Thanks to Maddie Stone and Google's Project Zero for discovering this +issue, providing a proof-of-concept, and a great analysis. + +Closes: https://gitlab.freedesktop.org/pixman/pixman/-/issues/63 + +Conflict:NA +Reference:https://gitlab.freedesktop.org/pixman/pixman/-/commit/a1f88e842e0216a5b4df1ab023caebe33c101395 +--- + pixman/pixman-trap.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/pixman/pixman-trap.c b/pixman/pixman-trap.c +index 91766fd..7560405 100644 +--- a/pixman/pixman-trap.c ++++ b/pixman/pixman-trap.c +@@ -74,7 +74,7 @@ pixman_sample_floor_y (pixman_fixed_t y, + + if (f < Y_FRAC_FIRST (n)) + { +- if (pixman_fixed_to_int (i) == 0x8000) ++ if (pixman_fixed_to_int (i) == 0xffff8000) + { + f = 0; /* saturate */ + } +-- +GitLab + diff --git a/pixman.spec b/pixman.spec index 687b68f..a1ea49b 100644 --- a/pixman.spec +++ b/pixman.spec @@ -1,11 +1,13 @@ Name: pixman Version: 0.40.0 -Release: 2 +Release: 3 Summary: Pixman is a pixel manipulation library for X and Cairo License: MIT URL: https://gitlab.freedesktop.org/pixman/pixman Source0: https://gitlab.freedesktop.org/pixman/pixman/-/archive/pixman-%{version}/pixman-pixman-%{version}.tar.bz2 +Patch6000: backport-CVE-2022-44638.patch + BuildRequires: gcc meson %description @@ -53,6 +55,9 @@ sed -i 's/120/600/' test/meson.build %{_libdir}/pkgconfig/* %changelog +* Tue Nov 08 2022 wangkerong - 0.40.0-3 +- fix CVE-2022-44638 + * Wed Oct 26 2022 zhouwenpei - 0.40.0-2 - Rebuild for next release -- Gitee