IIS的ASP文件路径名过长拒绝服务漏洞
作者:袁哥 来源:nsfocus 技术论坛 添加时间:2006-5-21 10:31:34看下面一段常用ASP代码:
var strFileName;
var strPathName;
strPathName="counter/"
strFileName="counter.txt";
strFileName=strPathName+strFileName;
var strPathFileName=Server.MapPath (strFileName);
var objFso=Server.CreateObject("Scripting.FileSystemObject")
var objTs;
if (!objFso.FileExists (strPathFileName))
{//若文件不存在则建立文件
objTs=objFso.OpenTextFile(strPathFileName,ForWriting,true) ;
objTs.WriteLine("0");
objTs.Close();
}
程序是把 counter/counter.txt 作为主页计数器文件,类似的一些ASP数据库应用差不多也是这样处理的。
但ASP.DLL文件操作的时候如果文件路径过长会出错(不知道是缓冲溢出还是栈溢出或者别的),而这儿可以通过特殊办法传递一个长路径参数过来,所以造成攻击。
IIS4.0+SP5+WINNT4.0测试是WEB服务关闭,可以拒绝服务攻击,还不清楚能不能进一步得到控制权;
IIS5.0+WIN2000测试是报告RPC错误、IIS服务忙等。
站内搜索