IE allows universal Cross Domain Scripting (TL#003)

From: Thor Larholm (thorat_private)
Date: Wed Jul 10 2002 - 07:32:19 PDT

  • Next message: SURUAZ: "Multiple Security Vulnerabilities in Sharp Zaurus"

    Thor Larholm, PivX, security advisory TL#003
    -------------------------------------
    
    By Thor Larholm, Denmark
    10 July 2002
    
    HTML format: http://www.PivX.com/larholm/adv/TL003/
    
    Topic: IE allows universal Cross Domain Scripting.
    
    Discovery date: 25 June 2002.
    
    Severity: High
    
    Affected applications:
    ----------------------
    
    Any application that hosts the WebBrowser control. Some of these are:
    
    Microsoft Internet Explorer
    Microsoft Outlook
    Microsoft Outlook Express
    
    Impact:
    -------
    
    Elevating privileges, arbitrary command execution, local file reading,
    stealing arbitrary cookies, etc.
    
    Authors:
    --------
    
    Patrick Zumstein and Thor Larholm.
    
    Introduction:
    -------------
    
    One of the many elements in HTML 4 is the OBJECT element which is used to
    embed external objects inside a page. Such objects can be the WebBrowser
    control and other ActiveX controls, images, applets and more.
    The object property of embedded WebBrowser controls is not subject to the
    Cross Domain security checks that embedded HTML documents ordinarily go
    through, and as such it is possible to escape any sandboxing and security
    zone restrictions.
    
    Discussion:
    -----------
    
    Any document can extend the properties exposed by the OBJECT element, and
    any namespace conflicts are handled by querying the object property which is
    a duplicate reference to the embedded document.
    When embedding a document from the same site (same protocol, port and host)
    it is possible to make a reference to the object property without
    circumventing any Cross Domain security checks. After having established a
    reference we will then change the location of the document being embedded.
    The location changes but the reference stays, and we now have complete
    access to the DOM of the foreign document.
    The default object being referenced by the object property in the case of
    text/html is the document object. The simple proof-of-concept exploit below
    will read the cookie from passport.com.
    The OBJECT element is not restricted to embedding HTML documents, but can
    embed objects of any type. As such, this vulnerability could be extended
    even further.
    
    Exploit:
    --------
    
    <object id="data" data="empty.html" type="text/html"></object>
    <script>
    var ref=document.getElementById("data").object;
    ref.location.href = "http://www.passport.com";
    setTimeout("alert(ref.cookie)",5000);
    </script>
    
    Solution:
    ---------------------
    
    Disable ActiveX, or
    Set "Script ActiveX controls marked safe for scripting" to Prompt or Disable
    ( <URL: http://www.PivX.com/tutorials/disable_activex.html> ).
    
    Tested on:
    ----------
    
    IE6 Win2000, all patches and servicepacks.
    IE5.5 Win98, all patches and servicepacks.
    IE5.5 WinNT 4, all patches and servicepacks.
    
    
    Demonstration:
    --------------
    
    I have put together some proof-of-concept examples:
    
    - Read foreign cookies
    - Read local (or foreign) file
    - Execute arbitrary commands
    
    These can be found at http://www.PivX.com/larholm/adv/TL003/
    
    Vendor status:
    --------------
    
    Microsoft was notified 25 June 2002.
    
    Mitigating factors:
    -------------------
    
    Outlook and OE are not directly affected if they run in the Restricted zone.
    
    Postscript:
    -----------
    
    On June 25, Patrick Zumstein notified Thor Larholm, Georgi Guninski and
    PacketStormSecurity about a possible vulnerability. In working together,
    Patrick and Thor quickly outlined the culprit and prepared this advisory,
    after which Microsoft were notified immediately.
    Since this is possibly very publicly known by now I have decided to release
    this advisory after only 2 weeks times, so that system administrators and
    end users may possibly apply the provided workaround to temporarily secure
    themselves until a proper patch has been made.
    
    
    Regards
    Thor Larholm, Security Researcher
    PivX Solutions, LLC
    
    Unpatched IE security holes - 19 and counting
    http://www.PivX.com/larholm/unpatched/
    Are You Secure?
    http://www.PivX.com
    



    This archive was generated by hypermail 2b30 : Wed Jul 10 2002 - 10:06:03 PDT