HP OpenView Storage Data Protector rds.exe服务堆溢出漏洞

影响版本:
HP OpenView Storage Data Protector 6.0
HP OpenView Storage Data Protector 5.5
漏洞描述
HP OpenView Storage Data Protector是可扩展的数据管理解决方案,实现基于磁盘或磁带的高性能备份和恢复功能。

OpenView Storage Data Protector默认绑定在TCP 1530端口上的Cell Manager Database服务(rds.exe)中存在堆溢出漏洞。该服务通过_ncp32._NtrpTCPReceiveMsg()接收以下格式的套接字数据:

[0xB6298C23][4-byte size][….][data]

之后将指定的size参数用作了内存分配例程_rm32.rm_getMem()的大小参数。由于缺少过滤检查,0xFFFFFFF8到0xFFFFFFFF之间的值就会导致整数溢出,分配不充分的堆缓冲区:

10004A57 mov eax, [ebp+arg_0] ; specified size
10004A5A add eax, 8 ; integer overflow
10004A5D push eax
10004A5E call ds:__imp__malloc

之后将原始报文数据写入到了不充分的缓冲区中,如_ncp32._NtrpTCPReceiveMsg()中所示:

002F2E77 mov eax, [ebp+received_length]
002F2E7A push eax ; size_t
002F2E7B mov ecx, [ebp+received_data]
002F2E7E push ecx ; src
002F2E7F mov edx, [ebp+allocated_buffer]
002F2E82 mov eax, [edx]
002F2E84 push eax ; dst
002F2E85 call _memcpy

攻击者可以利用这个漏洞覆盖内存指定的DWORD,导致执行任意代码。

<*参考

http://dvlabs.tippingpoint.com/advisory/TPTI-09-15
http://h20000.www2.hp.com/bizsupport/TechSupport/Document.jsp?objectID=c01124817&printver=true

*>

安全建议:
厂商补丁:

HP
--
HP已经为此发布了一个安全公告(HPSBMA02252)以及相应补丁:
HPSBMA02252:SSRT061258, SSRT061259 rev.1 - HP OpenView Storage
 Data Protector, Remote Arbitrary Code Execution
链接:http://h20000.www2.hp.com/bizsupport/TechSupport/
Document.jsp?objectID=c01124817&printver=true
发表评论?

0 条评论。

发表评论