Veritas Backup Exec Server Remote Registry Access Vulnerability iDEFENSE Security Advisory 06.23.05 www.idefense.com/application/poi/display?id=269&type=vulnerabilities June 23, 2005 I. BACKGROUND VERITAS Backup Exec is an advanced backup and restore solution for Microsoft Windows server environments. More information is available from the vendor's web site: http://veritas.com/Products/www?c=product&refId=57 II. DESCRIPTION Remote exploitation of an access validation vulnerability in Veritas Backup Exec for Windows provides attackers with 'Administrator' privileges over the target system's registry. The problem specifically exists within some RPC handlers defined in beserver.exe. The Backup Exec Server service registers an RPC interface on a TCP endpoint with ID 93841fd0-16ce-11ce-850d-02608c44967b on port 6106. The following assembly snippet from beserver.exe version 10.0.5484.0 shows the server-side RPC dispatch table for this interface: rpc_dispatch_table_1 .text:00425E28 dd offset rpc_sub_1 .text:00425E2C dd offset rpc_sub_2 .text:00425E30 dd offset rpc_sub_3 .text:00425E34 dd offset rpc_sub_4 .text:00425E38 dd offset rpc_sub_5 ; registry read .text:00425E3C dd offset rpc_sub_6 ; registry write .text:00425E40 dd offset rpc_sub_7 ; registry delete .text:00425E44 dd offset rpc_sub_8 ; registry enum .text:00425E48 dd offset rpc_sub_9 .text:00425E4C dd offset rpc_sub_10 .text:00425E50 dd offset rpc_sub_11 .text:00425E54 dd offset null_sub .text:00425E58 dd offset null_sub The above marked routines allow unauthenticated remote attackers to connect to the RPC endpoint and arbitrarily create, modify, delete and read keys. An attacker needs only to reverse engineer the Microsoft Interface Description Language (IDL) for the target routine and create a custom client to connect to and manipulate the server. The IDL definition for rpc_sub_6 is: long rpc_sub_6 ( /* 04 */ [in] [string] wchar_t *sub_key, /* 08 */ [in] [string] wchar_t *value_name, /* 0C */ [in] long type, /* 10 */ [in] long len_data, /* 14 */ [in,out] [size_is(len_data)] byte *data, /* 18 */ [in] long len_hkey, /* 1C */ [in] [size_is(len_hkey)] byte *hkey ); III. ANALYSIS Successful exploitation of the described vulnerability allows unauthenticated remote attackers to connect to and arbitrarily modify the target systems registry under the privileges of the 'Administrator' user. Registry write access can be leveraged in a number of ways to further compromise the target system. A simple vector would involve writing values to startup keys with UNC paths to malicious binaries. IV. DETECTION iDEFENSE has confirmed the existence of this vulnerability in the latest version of Veritas Backup Exec Server for Windows at the time of writing, version 10. It is suspected that earlier versions are also vulnerable. V. WORKAROUND Filter inbound TCP traffic on port 6106 to only trusted clients. VI. VENDOR RESPONSE The vendor has addressed this vulnerability in security advisory VX05-003: http://seer.support.veritas.com/docs/276605.htm VII. CVE INFORMATION The Common Vulnerabilities and Exposures (CVE) project has assigned the name CAN-2005-0771 to this issue. This is a candidate for inclusion in the CVE list (http://cve.mitre.org), which standardizes names for security problems. VIII. DISCLOSURE TIMELINE 03/18/2005 Initial vendor notification 03/30/2005 Initial vendor response 06/22/2005 Coordinated public disclosure IX. CREDIT This vulnerability was discovered by Pedram Amini, iDEFENSE Labs. Get paid for vulnerability research http://www.idefense.com/poi/teams/vcp.jsp X. LEGAL NOTICES Copyright (c) 2005 iDEFENSE, Inc. Permission is granted for the redistribution of this alert electronically. It may not be edited in any way without the express written consent of iDEFENSE. If you wish to reprint the whole or any part of this alert in any other medium other than electronically, please email customerservice@idefense.com for permission. Disclaimer: The information in the advisory is believed to be accurate at the time of publishing based on currently available information. Use of the information constitutes acceptance for use in an AS IS condition. There are no warranties with regard to this information. Neither the author nor the publisher accepts any liability for any direct, indirect, or consequential loss or damage arising from use of, or reliance on, this information. _______________________________________________ Full-Disclosure - We believe in it. Charter: http://lists.grok.org.uk/full-disclosure-charter.html Hosted and sponsored by Secunia - http://secunia.com/