安全研究

安全漏洞
Borland InterBase ibserver.exe服务远程缓冲区溢出漏洞

发布日期:2008-04-11
更新日期:2008-04-14

受影响系统:
Borland InterBase 2007 SP2
描述:
BUGTRAQ  ID: 28730

Borland InterBase是跨平台的高性能商业数据库。

Borland InterBase数据库的ibserver.exe服务中存在缓冲区溢出漏洞,成功利用这个漏洞的攻击者可以导致拒绝服务或在有漏洞的数据库中执行任意指令。

有漏洞的opcode为0x52,如果向TCP 3050端口发送畸形如下畸形报文的话:

    | 4bytes Opcode  |                  "\x00\x00\x00\x52\"
    | 4bytes Unknow  |                  "\xFF\xFF\xFF\xFF"
    | 4bytes Length1 |                  "\x00\x00\x03\xE8"
    | Data1          |                  "\x41"x1000
    | 4bytes Length2 |                  "\x00\x00\x00\x10"
    | Data2          |                  "\x42"x16
  
就会触发这个溢出,以如下方式覆盖返回地址:

.text:0041460F                 mov     ecx, [ebp+arg_4]
.text:00414612                 xor     edx, edx
.text:00414614                 mov     dx, [ecx]
.text:00414617                 push    edx
.text:00414618                 mov     eax, [ebp+arg_4]
.text:0041461B                 mov     ecx, [eax+4]
.text:0041461E                 push    ecx                          // | Data1 |   \
                "\x41"x1000
.text:0041461F                 mov     edx, [ebp+arg_0]
.text:00414622                 push    edx
.text:00414623                 mov     eax, [ebp+arg_0]
.text:00414626                 mov     ecx, [eax+4]
.text:00414629                 call    dword ptr [ecx+8]            //call function \
411136 (strcpy)

.text:00411136                 push    ebp
.text:00411137                 mov     ebp, esp
.text:00411139                 push    ecx
.text:0041113A                 push    esi
.text:0041113B                 push    edi
......
.text:00411157                 mov     ecx, [ebp+loop_count]
.text:0041115A                 mov     eax, [ebp+recv_info_struct]
.text:0041115D                 mov     esi, [eax+0Ch]
.text:00411160                 mov     edi, [ebp+arg_4]
.text:00411163                 mov     edx, ecx
.text:00411165                 shr     ecx, 2
.text:00411168                 rep movsd                    
                                   //copy data 1000 bytes 0x41,without boundary check
                                   //Buffer overflow take place
.text:0041116A                 mov     ecx, edx
.text:0041116C                 and     ecx, 3
.text:0041116F                 rep movsb

<*来源:Liu Zhen Hua (alau@163.com
  
  链接:http://marc.info/?l=bugtraq&m=120792543300887&w=2
*>

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!

http://www.milw0rm.com/exploits/5427

建议:
厂商补丁:

Borland
-------
目前厂商还没有提供补丁或者升级程序,我们建议使用此软件的用户随时关注厂商的主页以获取最新版本:

http://www.borland.com/

浏览次数:3064
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障