Opera Local File/Directory Detection (GM#009-OP)

From: GreyMagic Software (security_at_GREYMAGIC.COM)
Date: 08/17/04

  • Next message: Russ: "Re: XP SP2 and Group Policy"
    Date:         Tue, 17 Aug 2004 14:50:30 +0200

    GreyMagic Security Advisory GM#009-OP

    By GreyMagic Software, 17 Aug 2004.

    Available in HTML format at

    Topic: Opera Local File/Directory Detection.

    Discovery date: 04 Aug 2004.

    Affected applications:

    Opera 7.53 and prior on Windows, Linux and Mac.


    While working on a proof-of-concept exploit for the previous Opera advisory
    [1] we needed to find a way to detect the victim's system root directory, in
    order to locate a specific resource that's required for exploitation.

    [1] http://www.greymagic.com/security/advisories/gm008-op/


    After a bit of investigation, we found that we can easily determine whether
    a directory (or file) exists or not.

    When a non-existent file or directory is assigned to an iframe, an error is
    thrown to the user and the actual location of the iframe does not change.

    This situation can easily be detected by an attacker using an accessible
    iframe (within the same domain). By changing its URL to the location of a
    file or directory and then checking whether an error is thrown when trying
    to access its DOM, the attacker can determine whether the resource exists.


    The following sample code determines whether the directory "c:/winnt"

    <iframe src="blank.html"></iframe>
    <script type="text/javascript">
    onload=function () {
    var sLocal="c:/winnt";
    function () {
    try {
    alert(sLocal+" does not exists.");
    } catch (oErr) {
    alert(sLocal+" exists.");

    An attacker is likely to run this against a group of directories in order to
    find the right one or determine whether specific programs are installed.


    Proof-of-concept demonstrations of this issue can be found in our previous
    Opera advisory, at http://www.greymagic.com/security/advisories/gm008-op/.


    Update to Opera 7.54.

    One of the changes in Opera 7.54 was to completely block access to the
    file:// protocol from non-local URLs. That change also happens to protect
    against this vulnerability.

    Tested on:

    Opera 7.52.
    Opera 7.53.


    The information in this advisory and any of its demonstrations is provided
    "as is" without warranty of any kind.

    GreyMagic Software is not liable for any direct or indirect damages caused
    as a result of using the information or demonstrations provided in any part
    of this advisory.

    - Copyright 2004 GreyMagic Software.

    NTBugtraq Editor's Note:

    Want to reply to the person who sent this message? This list is configured such that just hitting reply is going to result in the message coming to the list, not to the individual who sent the message. This was done to help reduce the number of Out of Office messages posters received. So if you want to send a reply just to the poster, you'll have to copy their email address out of the message and place it in your TO: field.

  • Next message: Russ: "Re: XP SP2 and Group Policy"