提交 #520182: Open Source libgsf <=1.14.53 Integer Overflow -> Heap Overflow (gsf_prop_settings_collect_va)信息

标题Open Source libgsf <=1.14.53 Integer Overflow -> Heap Overflow (gsf_prop_settings_collect_va)
描述The vulnerability arises from unchecked arithmetic during the dynamic expansion of the parameters array—adding 16 to n_alloced_params near SIZE_MAX can overflow, leading to underallocation and potential out-of-bounds writes to heap memory. void gsf_prop_settings_collect_valist (GType object_type, GsfParam **p_params, size_t *p_n_params, const gchar *first_property_name, va_list var_args) { ... size_t n_params = *p_n_params; size_t n_alloced_params = n_params; ... while (name) { ... if (n_params >= n_alloced_params) { // If n_alloced_params is near SIZE_MAX, adding 16 may overflow. n_alloced_params += 16; params = g_renew (GsfParam, params, n_alloced_params); // underallocation as a result fof the arithmetic } ... params[n_params].name = name; //the 'write' logic, could attempt to derference an offset that isn't mapped, or write to arbitrary addresses on the heap ... n_params++; // another incrementation vector that could lead to an overflow in theory ... } ... }
用户 ninpwn (UID 82253)
提交2025-03-13 21時21分 (2 年前)
管理2025-03-24 13時46分 (11 days later)
状态已接受
VulDB条目300742 [GNOME libgsf 直到 1.14.53 gsf_prop_settings_collect_va n_alloced_params 内存损坏]
积分17

Do you know our Splunk app?

Download it now for free!