欢迎光临
我们一直在努力

ASP.NET安全漏洞及对策-.NET教程,安全和优化

建站超值云服务器,限时71元/月

在nt-bugtraq的邮件列表上首先报告的security bug in .net forms authentication适用于asp.net 1.0 (rtm, sp1, sp2, sp3)和asp.net 1.1 (rtm, sp1).

当form authentication被使用时,匿名用户在试图访问被保护的页面如http://localhost/webapplication2/secret.aspx时会被redirect到登录网页如http://localhost/webapplication2/login.aspx?returnurl=%2fwebapplication2%2fsecret.aspx.

但是如果使用mozilla,匿名用户可以这样未经认证就访问被保护的页面:http://localhost/webapplication2\secret.aspx;对ie,可以使用%5c达到类似的效果:http://localhost/webapplication2%5csecret.aspx

微软在10月5日发布了what you should know about a reported vulnerability in microsoft asp.net网页以提供针对此安全漏洞的对策。当前的对策主要是如kb887459所描述的那样在global.asax或其code-behind中在application_beginrequest中增加检查

    if (request.path.indexof(\\) >= 0 ||        system.io.path.getfullpath(request.physicalpath) != request.physicalpath)     {        throw new httpexception(404, “not found”);    }
显然每个application都需要有这样的检查以应对此安全漏洞。微软还会提供其他的对策,请关注what you should know about a reported vulnerability in microsoft asp.net网页更新。

对asp.net 2.0 beta1,并没有此漏洞而是得到404错误。

贴子以”现状”提供且没有任何担保也没有授予任何权利

发表于 thursday, october 07, 2004 1:53 am

评论
# re: asp.net form authentication安全漏洞及对策 10/7/2004 8:49 am tommywoo
http://localhost/webapplication2%5csecret.aspx

试过了,不行。ie 版本问题?

# re: asp.net form authentication安全漏洞及对策 10/7/2004 9:40 am r2
啊,好可怕!幸好我用beta1

# re: asp.net form authentication安全漏洞及对策 10/7/2004 9:43 am r2
难道微软的这种form认证这么脆弱??

# re: asp.net form authentication安全漏洞及对策 10/7/2004 10:09 am wonge
windows 2003下不会出现这种错误:http://localhost/webapplication2%5csecret.aspx ?

# re: asp.net form authentication安全漏洞及对策 10/7/2004 10:12 am 孙展波
我是使用xpsp2的os及其带的ie6验证的。
从what you should know about a reported vulnerability in microsoft asp.net网页,windows 2003 server也有这个问题。这是asp.net的bug而不是os的bug.

# re: asp.net form authentication安全漏洞及对策 10/7/2004 10:44 am lostinet
可怕的漏洞啊~~~
解决方法可以做个简单的ihttpmodule,把它注册到gac和machine.config中.

# re: asp.net form authentication安全漏洞及对策 10/7/2004 1:21 pm flashtoy
我按方法试了.怎么没有这个问题.
吓的我半死!
http://www.creva.org.cn/creva/orgshow.aspx

# re: asp.net form authentication安全漏洞及对策 10/7/2004 6:19 pm tommywoo
楼上的朋友,,我想到了。。

因为我们用的是ie,ie要用这个漏洞,得使用%5c来代替\符号。。。

我们两个都是在根目录的第一级子目录加验证的,比如你的,得用http://www.creva.org.cn%5ccreva/orgshow.aspx

显然这里有一个问题,域名是什么?这里域名被表示成了“www.creva.org.cn%5ccreva”,而不是实际域名“www.creva.org.cn”。

我想问题应该在这里,展波用的是,虚拟目录下的子目录,所以出现了那个漏洞。

你可以用mozilla的\符号试试。

# re: asp.net form authentication安全漏洞及对策 10/7/2004 6:25 pm 蓝色空间
确实有问题,赶快修正

# re: asp.net form authentication安全漏洞及对策 10/7/2004 6:38 pm libber
为什么我测试不出来呢? .net framework 1.1 sp1

# re: asp.net form authentication安全漏洞及对策 10/7/2004 8:28 pm kwklover
我也测试过了,没有这个问题啊
大家可以测试一下这个网站

# re: asp.net form authentication安全漏洞及对策 10/7/2004 8:33 pm erictang2003
我也没测试出来,用ie6 和 firefox1.0 都没试出来.
不过还是改了代码以防万一

# re: asp.net form authentication安全漏洞及对策 10/8/2004 12:10 am xiaoheng
测试了,没发现问题!!!!

# re: asp.net form authentication安全漏洞及对策 10/8/2004 9:09 am gigabyte
可以在global.asax里面加上这么一段解决:

void application_beginrequest(object source, eventargs e) {
if (request.path.indexof(\\) >= 0 ||
system.io.path.getfullpath(request.physicalpath) != request.physicalpath) {
throw new httpexception(404, “not found”);
}
}

这里有ms的解释:
http://www.kbalertz.com/kb_887459.aspx
# re: asp.net form authentication安全漏洞及对策 10/8/2004 1:14 pm michael lee
god ! 噩耗!!!

这种毛病都能出。还有前一阵的那个gdi+的bug,更是让人匪夷所思。

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » ASP.NET安全漏洞及对策-.NET教程,安全和优化
分享到: 更多 (0)