查看文章
 
The Week of Baidu Bugs - Day 01: 任意URL跳转漏洞
2008-07-11 11:43
搬来百度不久,所以花了点小时间找了找baidu的漏洞,收集了一点,会陆续发出来。

Baidu的安全做的还是挺不错的,至少核心功能模块的漏洞还是比较少,看的出来网站对安全还是挺上心。

这次将在这里陆续披露一些漏洞的细节和POC,并讲讲漏洞的原理,希望百度能够尽快fix这些漏洞或者bugs。同时也搞搞科普,看看漏洞是怎样形成的,怎样造成危害的。

以后有机会可以和朋友们再搞搞The Month of Baidu/QQ/xxx Bugs之类。

今天是"The Week of Baidu Bugs"(WoBB)的第一天,由潜入深,先讲讲URL跳转漏洞。

这种漏洞往往是被利用来钓鱼,目前很多网站都有类似的漏洞。

一般形式如下: http://www.fvck.com/?jmpurl=http://www.attacker.com

从链接功能上看,应该是做一个跳转,但是jmpurl没有对跟的域名做限制,可以跳到任意地址去。

所以攻击者可以构造这个link,然后就跳到他自己的网站去了。

我们知道,目前钓鱼者往往喜欢在IM里或者是邮件里发送一些欺诈网站,比如欺骗说中奖了一类。

而我们的对抗方法一般是检查域名是否为自己的网站: fvck.com

IE8和FF都有一个高亮显示主域名的方式来对抗这种基于URL的欺骗(参考我前不久写的IE8安全新特性),那么如果是这种URL跳转漏洞,类似的防御方法就变得一点用都没有了。

如下图,在QQ中,不同域名的链接的提示是不同的

言归正传,baidu的URL跳转漏洞如下:

http://passport.baidu.com/ubrwsbas?u_jump_url=http://www.ph4nt0m.org

passport.baidu.com是baidu的登录入口,其中只要是有 u_jump_url 这个参数的地方,后面的跳转地址都是可以控制的,可以指向我们的任意链接。

我给出的link只是其中一个,你还可以去找找带了u_jump_url这个参数的其他链接,都能够由自己控制。


除了这个参数的问题外,还有一个基于DOM的跳转漏洞

构造以下链接:
http://hi.baidu.com/aullik5/album/默认相册#.ph4nt0m.org

然后刷新页面,看到了什么?是的,跳转到了 http://hi.baidu.com.ph4nt0m.org

问题出在如下代码
提交后,服务器返回中有

<script language="javascript">
<!--
var hash=window.location.hash;
if(hash.replace(/#+/,"").length>1)
{
var arg=window.location.href.split(/#+/)[1];
window.location="http://hi.baidu.com"+arg;
}

所以就跳到我们要的地方去了


以上,就是今天科普的内容。

欲知后事如何,且听下回分解。


注: 本次活动纯属个人行为,与任何组织无关。




类别:象牙塔||添加到搜藏 |分享到i贴吧|浏览(2939)|评论 (0)
 
最近读者:
 
网友评论:
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
     

   
帮助中心 | 空间客服 | 投诉中心 | 空间协议
©2012 Baidu