From: B Horn Date: Fri, 1 Nov 2024 23:52:06 +0000 (+0000) Subject: gettext: Remove variables hooks on module unload X-Git-Tag: archive/raspbian/2.12-9+rpi1^2~38 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=e9ba6eb58be8056bf86158a5e032177614f24c8f;p=grub2.git gettext: Remove variables hooks on module unload The gettext module does not entirely cleanup after itself in its GRUB_MOD_FINI() leaving a few variables hooks in place. It is not possible to unload gettext module because normal module depends on it. Though fix the issues for completeness. Fixes: CVE-2025-0622 Reported-by: B Horn Signed-off-by: B Horn Reviewed-by: Daniel Kiper Gbp-Pq: Topic cve-2025-jan Gbp-Pq: Name gettext-Remove-variables-hooks-on-module-unload.patch --- diff --git a/grub-core/gettext/gettext.c b/grub-core/gettext/gettext.c index 7422f89..daaaa69 100644 --- a/grub-core/gettext/gettext.c +++ b/grub-core/gettext/gettext.c @@ -540,6 +540,10 @@ GRUB_MOD_INIT (gettext) GRUB_MOD_FINI (gettext) { + grub_register_variable_hook ("locale_dir", NULL, NULL); + grub_register_variable_hook ("secondary_locale_dir", NULL, NULL); + grub_register_variable_hook ("lang", NULL, NULL); + grub_gettext_delete_list (&main_context); grub_gettext_delete_list (&secondary_context);