Full Disclosure mailing list archives

Re: ZDI-12-119: EMC AutoStart ftAgent Opcode 0x41 Subcode 0x00 Parsing Remote Code Execution Vulnerability


From: Jeffrey Walton <noloader () gmail com>
Date: Thu, 12 Jul 2012 15:41:02 -0400

... the vulnerable function uses a uninitialized stack variable in
calculating a memory pointer. Also, the function uses signed extension and
signed comparison when checking the uninitialized stack variable, which
allows arbitrary negative values to bypass the check.
Oh my. Was HP too l33t to use GCC's -Wall -Wextra -Wconversion; or
perhaps Visual Studio's /Wall /W4 /analyze?

Its sad to see Comp Sci 101 errors when the tool chain will diagnose
these sorts of problems.... Despite what Linus Torvald has to say, GCC
has very good static analysis capabilities
(http://linux.derkeiler.com/Mailing-Lists/Kernel/2006-11/msg08325.html).

Jeff

On Thu, Jul 12, 2012 at 1:11 PM, ZDI Disclosures
<zdi-disclosures () tippingpoint com> wrote:
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

ZDI-12-119: EMC AutoStart ftAgent Opcode 0x41 Subcode 0x00 Parsing Remote
Code Execution Vulnerability
http://www.zerodayinitiative.com/advisories/ZDI-12-119
July 12, 2012

- -- CVE ID:
CVE-2012-0409

- -- CVSS:
10, AV:N/AC:L/Au:N/C:C/I:C/A:C

- -- Affected Vendors:
EMC

- -- Affected Products:
EMC AutoStart


- -- TippingPoint(TM) IPS Customer Protection:
TippingPoint IPS customers have been protected against this
vulnerability by Digital Vaccine protection filter ID 12435.
For further product information on the TippingPoint IPS, visit:

    http://www.tippingpoint.com

- -- Vulnerability Details:
This vulnerability allows remote attackers to execute arbitrary code on
vulnerable installations of EMC Autostart. Authentication is not required
to exploit this vulnerability.

The specific flaw exists within the ftAgent.exe service, which listens by
default on TCP port 8045. When handling messages with opcode 65 (0x41) and
subcode 00, the vulnerable function uses a uninitialized stack variable in
calculating a memory pointer. Also, the function uses signed extension and
signed comparison when checking the uninitialized stack variable, which
allows arbitrary negative values to bypass the check. This could result in
corruption of a controlled memory location, which can be leveraged to
execute code under the context of the SYSTEM user.


- -- Vendor Response:
EMC has issued an update to correct this vulnerability. More details can be
found at:
http://www.securityfocus.com/archive/1/522835/30/0/threaded


- -- Disclosure Timeline:
2011-12-22 - Vulnerability reported to vendor
2012-07-12 - Coordinated public release of advisory


- -- Credit:
This vulnerability was discovered by:
* gwslabs.com

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


Current thread: