您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

PHP 内存管理器符号比较多个溢出漏洞

2025/9/16 2:47:43发布22次查看
受影响系统:php php 5.2.0
不受影响系统:php php 5.2.1
描述:bugtraq id: 23238
php是广泛使用的通用目的脚本语言,特别适合于web开发,可嵌入到html中。php的内存管理器实现上存在漏洞,本地攻击者可能利用此漏洞提升权限。如果通过emalloc()函数分配内存的话,php中新的zend内存管理器会在内部的_zend_mm_alloc_int()函数中处理这个请求,首先使用zend_mm_true_size宏判断所请求内存块的真实大小,如下所示:
static void *_zend_mm_alloc_int(zend_mm_heap *heap, size_t size zend_file_line_dc ...) { size_t true_size, best_size = 0x7fffffff; zend_mm_free_block *p, *end, *best_fit = null; true_size = zend_mm_true_size(size); the macro expands to (((long)size
但在进行比较之前这段代码将大小设置为有符长型,因此如果请求了正常情况下会导致内存破坏或越界的很大的内存块,就可能将其处理为负数,仅分配很小的内存块,导致多个可利用的缓冲区溢出。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product