ASP.NET Form Authentication安全漏洞及对策
ASP.NET Form Authentication安全漏洞及對(duì)策
在NT-Bugtraq的郵件列表上首先報(bào)告的Security bug in .NET Forms Authentication適用于ASP.NET 1.0 (RTM, SP1, SP2, SP3)和ASP.NET 1.1 (RTM, SP1).
<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
?
當(dāng)Form Authentication被使用時(shí),匿名用戶在試圖訪問(wèn)被保護(hù)的頁(yè)面如http://localhost/WebApplication2/secret.aspx時(shí)會(huì)被redirect到登錄網(wǎng)頁(yè)如http://localhost/WebApplication2/login.aspx?ReturnUrl=%2fWebApplication2%2fsecret.aspx.
?
但是如果使用Mozilla,匿名用戶可以這樣未經(jīng)認(rèn)證就訪問(wèn)被保護(hù)的頁(yè)面:http://localhost/WebApplication2\secret.aspx;對(duì)IE,可以使用%5C達(dá)到類似的效果:http://localhost/WebApplication2%5Csecret.aspx
?
微軟在10月5日發(fā)布了What You Should Know About a Reported Vulnerability in Microsoft ASP.NET網(wǎng)頁(yè)以提供針對(duì)此安全漏洞的對(duì)策。當(dāng)前的對(duì)策主要是如KB887459所描述的那樣在Global.asax或其Code-Behind中在Application_BeginRequest中增加檢查
?
顯然每個(gè)Application都需要有這樣的檢查以應(yīng)對(duì)此安全漏洞。微軟還會(huì)提供其他的對(duì)策,請(qǐng)關(guān)注What You Should Know About a Reported Vulnerability in Microsoft ASP.NET網(wǎng)頁(yè)更新。
?
對(duì)ASP.NET 2.0 Beta1,并沒(méi)有此漏洞而是得到404錯(cuò)誤。
?
貼子以"現(xiàn)狀"提供且沒(méi)有任何擔(dān)保也沒(méi)有授予任何權(quán)利
發(fā)表于 Thursday, October 07, 2004 1:53 AM
評(píng)論
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/7/2004 8:49 AM
試過(guò)了,不行。IE 版本問(wèn)題?
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/7/2004 9:40 AM
啊,好可怕!幸好我用Beta1
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/7/2004 9:43 AM
難道微軟的這種Form認(rèn)證這么脆弱??
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/7/2004 10:09 AM
Windows 2003下不會(huì)出現(xiàn)這種錯(cuò)誤: ?
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/7/2004 10:12 AM
我是使用XPSP2的OS及其帶的IE6驗(yàn)證的。
從What You Should Know About a Reported Vulnerability in Microsoft ASP.NET網(wǎng)頁(yè),Windows 2003 Server也有這個(gè)問(wèn)題。這是ASP.NET的Bug而不是OS的Bug.
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/7/2004 10:44 AM
可怕的漏洞啊~~~
解決方法可以做個(gè)簡(jiǎn)單的IHttpModule,把它注冊(cè)到GAC和machine.config中.
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/7/2004 1:21 PM
我按方法試了.怎么沒(méi)有這個(gè)問(wèn)題.
嚇的我半死!
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/7/2004 6:19 PM
樓上的朋友,,我想到了。。
因?yàn)槲覀冇玫氖荌E,IE要用這個(gè)漏洞,得使用%5C來(lái)代替\符號(hào)。。。
我們兩個(gè)都是在根目錄的第一級(jí)子目錄加驗(yàn)證的,比如你的,得用
顯然這里有一個(gè)問(wèn)題,域名是什么?這里域名被表示成了“www.creva.org.cn%5Ccreva”,而不是實(shí)際域名“www.creva.org.cn”。
我想問(wèn)題應(yīng)該在這里,展波用的是,虛擬目錄下的子目錄,所以出現(xiàn)了那個(gè)漏洞。
你可以用Mozilla的\符號(hào)試試。
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/7/2004 6:25 PM
確實(shí)有問(wèn)題,趕快修正
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/7/2004 6:38 PM
為什么我測(cè)試不出來(lái)呢? .net framework 1.1 sp1
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/7/2004 8:28 PM
我也測(cè)試過(guò)了,沒(méi)有這個(gè)問(wèn)題啊
大家可以測(cè)試一下這個(gè)網(wǎng)站
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/7/2004 8:33 PM
我也沒(méi)測(cè)試出來(lái),用IE6 和 FireFox1.0 都沒(méi)試出來(lái).
不過(guò)還是改了代碼以防萬(wàn)一
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/8/2004 12:10 AM
測(cè)試了,沒(méi)發(fā)現(xiàn)問(wèn)題!!!!
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/8/2004 9:09 AM
可以在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的解釋:
?re: ASP.NET Form Authentication安全漏洞及對(duì)策 10/8/2004 1:14 PM
God ! 噩耗!!!
這種毛病都能出。還有前一陣的那個(gè)GDI+的bug,更是讓人匪夷所思。
轉(zhuǎn)載于:https://www.cnblogs.com/LCX/articles/49936.html
總結(jié)
以上是生活随笔為你收集整理的ASP.NET Form Authentication安全漏洞及对策的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 多段实例代码详解7大类Python运算符
- 下一篇: hibernate 封装 2008-11