From 435a349673e34744029037bfb0c172993d761d96 Mon Sep 17 00:00:00 2001 From: Funda Wang Date: Thu, 11 Jul 2024 23:31:47 +0800 Subject: [PATCH] Fix CVE-2024-6655: Library injection from CWD --- backport-gtk+-3.24-CVE-2024-6655.patch | 35 ++++++++++++++++++++++++++ gtk3.spec | 6 ++++- 2 files changed, 40 insertions(+), 1 deletion(-) create mode 100644 backport-gtk+-3.24-CVE-2024-6655.patch diff --git a/backport-gtk+-3.24-CVE-2024-6655.patch b/backport-gtk+-3.24-CVE-2024-6655.patch new file mode 100644 index 0000000..1c53342 --- /dev/null +++ b/backport-gtk+-3.24-CVE-2024-6655.patch @@ -0,0 +1,35 @@ +From 3bbf0b6176d42836d23c36a6ac410e807ec0a7a7 Mon Sep 17 00:00:00 2001 +From: Matthias Clasen +Date: Sat, 15 Jun 2024 14:18:01 -0400 +Subject: [PATCH] Stop looking for modules in cwd + +This is just not a good idea. It is surprising, and can be misused. + +Fixes: #6786 +--- + gtk/gtkmodules.c | 9 ++------- + 1 file changed, 2 insertions(+), 7 deletions(-) + +diff --git a/gtk/gtkmodules.c b/gtk/gtkmodules.c +index 704e412aeb5..f93101c272e 100644 +--- a/gtk/gtkmodules.c ++++ b/gtk/gtkmodules.c +@@ -214,13 +214,8 @@ find_module (const gchar *name) + gchar *module_name; + + module_name = _gtk_find_module (name, "modules"); +- if (!module_name) +- { +- /* As last resort, try loading without an absolute path (using system +- * library path) +- */ +- module_name = g_module_build_path (NULL, name); +- } ++ if (module_name == NULL) ++ return NULL; + + module = g_module_open (module_name, G_MODULE_BIND_LOCAL | G_MODULE_BIND_LAZY); + +-- +GitLab + diff --git a/gtk3.spec b/gtk3.spec index accbd15..98fc879 100644 --- a/gtk3.spec +++ b/gtk3.spec @@ -14,7 +14,7 @@ #Basic Information Name: gtk3 Version: 3.24.21 -Release: 5 +Release: 6 Summary: GTK+ graphical user interface library License: LGPLv2+ URL: http://www.gtk.org @@ -49,6 +49,7 @@ Obsoletes: gtk-solidity-engine < 0.4.1-9 Obsoletes: oxygen-gtk3 < 2:1.4.1 Patch0: gtk3-B.3.24.21-translate-information-to-chinese.patch +Patch1: backport-gtk+-3.24-CVE-2024-6655.patch %description GTK+ is an object-oriented widget toolkit written in the programming language C; @@ -262,6 +263,9 @@ gtk-query-immodules-3.0-64 --update-cache &>/dev/null || : %{_mandir}/man1/gtk3-widget-factory.1* %changelog +* Thu Jul 11 2024 Funda Wang - 3.24.21-6 +- Fix CVE-2024-6655: Library injection from CWD + * Thu Jan 18 2024 zhangpan - 3.24.21-5 - revert delete taboo words commit -- Gitee