调皮的location.href

2014/01/26 02:01:19

0×00 背景


随着水瓶月的到来,在祖国繁荣昌盛的今天,web系统的浏览器端也越来越重,很多的功能逻辑都放在了js中,前端的漏洞也越来越多。 我今天就说说location.href跳转的一些问题。

前端跳转常见的代码形式是:

1
location.href = 'http://www.baidu.com';

 

在前端js中有可能是这样:

1
2
3
4
5
6
var hash = location.hash;
if(hash)
{
var url = hash.substring(1);
location.href = url;
}

0×01 常见的跳转漏洞


什么是跳转漏洞?突破了系二元期權手續費统预期的跳转,就是跳转漏洞。大多数系统的预期是跳转到当前域url的http访问。

以上面的代码为例,hash值为攻击者可控,常见的漏洞形式可以为:

http://yigezangpao.com/test.html#http://jiajiba.taobao.com

这个地址会利用信任关系跳转到钓鱼网站

http://yigezangpao.com/test.html#javascript:alert(document.cookie)

这个会跳转到浏览器端的javascript协议而执行js,成了一个反射的xss,而且浏览器端的xssfilter对它无效

0×02 跳转漏洞的危害


可能的危害场景如下:

受害用户被骗点击进入了钓鱼站,可导致家破人亡妻离子散被网友拉黑……

在一些sns网站中,点击第三方网站时,可能会有安全提示,恶意网址则可利用信任域的身份,绕过了检查。

很多app带有二维码扫描功能,对本域或白名单域会不做提示,直接跳转访问。

当你扫描一个二维码的时候,你可能已二元期權经点击了一个恶意或含有某种攻击代码的网页javascript为协议的反射型xss。

一般的社区发表链接时,不会自动识别浏览器的伪协议,不会形成可点击的链接,但是利用跳转漏洞,则可以欺骗目标用户打开某个浏览器伪协议……

0×03 目前的防护的一些问题


我见到的常见的有防护有:

给变量前加"/index.html"或者只有"/index.html"开头的才跳转
替换变量中的":"
替换"http://"
匹配域名白名单
……

这几类或多或少有些问题,如下:

对于在变量前加/的,或者/开头才跳转的,他们预期的是控制在本域下。但当

1
location.href = "//diaoyuwangzhan.com"

时,浏览器会把后面的识别成一个标准的url来跳转,而不是一个绝对路径。

对于允许第三方跳转的,匹配域名白名单的,一定要写好正二元期权移动应用则的逻辑严格匹配url的标准格式,否则可能会被

http://yigezangpao.com.jiajiba.taobao.com

http://yigezangpao.com@jiajiba.taobao.com


http://jiajiba.taobao.com/yigezangpao.com

等绕过

对于替换”:“的防护:

twitter曾经犯过这样的错,twitter的程序员是这样改的:

1
var c = location.href.split("#!")[1];
    if (c) {
    window.location = c.replace(":", "");
    } else {
    return true;
    }

结果又被如下链接干:

http://twitter.com/#!javascript::alert(document.domain); 

比第一次多了个:

因为replace()函数的第一个参数,按照规范中的方式,是要用正则写的。如果第一个参数是一个字符串,javascript默认只会替换掉他找到的第一个字符

0×04 比杨幂还神奇


对于上面的替换”:”的方案,如果完全替换,是不是就没有问题了呢?

如果你曾觉得你的女友不可理喻,那么当我告诉你有一个东西的不可理喻程度已经达到你女友的50%时,你一定会惊呼,”天呐,竟然还有这么变态的东西!!!“ 不错,你猜的非常对,这个不可理喻的东西就是ie浏览器

如前文的例子,如果对方已经完全替换”:”,你试试在ie中访问如下链接

http://yigezangpao.com/test.html#javascript:alert(1)

也就是

1
location.href = "javascript:alert(1)"

你会惊奇的发现弹了,':'是':'的html编码,至于为什么会这样我不知道,我的是ie11,其他版本没测

0×05 解决方案


对于不允许跳转到第三方的,可以使用location.pathname来跳转,用这个跳转绝对靠谱。

有句成语”path就不是共产党员“就是修饰这个属性的,既然不是共产党员,说明path是靠谱的。

对于允许跳转到第三方的,做好白名单的检查规则。

Posted in 学习资料,网络安全1 条评论

百度首页反射半自动存储xss

2013/05/06 13:05:38

注:此漏洞已经在乌云上提交和公开,并且百度已经确认修复

chrome和ff下有效,IE没测,需要百度用户在登陆状态下

百度首页搜索汉字超过两个后,会把搜索内容及拼音写入浏览器的localstorage,当你再次搜索类似的词时,会在下拉框自动填充,但在当你输入的是字母时,自动响应出的汉字对应内容没有进行html转义

baidu
我们可以很简单的iframe一个构造好的搜索结果页来让用户浏览,如

<iframe src='http://www.baidu.com/s?wd=%E5%BE%AE%E5%8D%9A%3Cimg+src%3D1+onerror%3Dalert%281%29%3E' width='0' height='0'></iframe>
<img src=美女高潮图>

以后当用户再搜索或误输入”weib” “weibo”等字符时,就会执行我们的代码

这个漏洞比较难利用,可以写入localstorage的搜索内容有长度要求,可利用部分很短,自动填充用的是innerhtml,<script>无效。但由于每次可以显示两条,所以通过两次拼接,还是可以实现弹窗钓鱼或者转向广告业恶意页等,还是有一定危害。比如如下代码

<iframe src='http://www.baidu.com/s?wd=搜索<img+src+onerror%3Dlocation.href%3Da>' width='0' height='0'></iframe>
<iframe src='http://www.baidu.com/s?wd=搜索<img+src+onerror%3Da%3D%27%2F%2Fso.com%27>' width='0' height='0'></iframe>
<img src=美女完事累坏了图>

访问这样的页面后,以后在百度搜索框里只要敲”sous””sousu””sousuo”等都会跳到360搜索,如果中标方是个有文采的互联网达人,此人会立马在微博上惊呼“天呐,360搜索加入了百度的阿拉丁计划”

Posted in 网络安全2 条评论

twitter的localStorage的xss

2011/10/22 00:10:17

localStorage是html5里的一个概念,可以用于浏览器端的本地存储,以domain区分

twitter的localStorage里的内容可以xss,虽然很鸡肋,但很好玩

如果你让我用了你的电脑,我就可以钓鱼盗你的号,泡你的粉丝了……

如果再有个反射xss配合种localStorage,那就无敌了,只要用户点了你的链接后,就等于种下一个存储型的xss了

而且localStorage的优点是比cookie时间长,普通用户还注销不了

可能是html5的东西刚开始流行,程序员们还没重视,基本对localStorage里的内容不加过滤验证就直接在页面使用了

看了下腾讯微博的,也有类似的问题

html5是好东西,程序员和黑客都喜欢

Posted in 搞笑幽默,网络安全我抢沙发

火狐微博图片粘贴扩展地址更新

2011/06/18 03:06:45

火狐官方上的地址不知道为何不好用了,可能没通过审核

本来也没打算再管了,但微博上有网友要此扩展,所以把扩展传上来了

前段网易微博的页面更新了,所以扩展在网易微博有点问题,此版本也顺便修复了这个问题

新地址在下面:http://lvwei.me/TImgPaste.xpi

Posted in 学习资料我抢沙发

五一国际劳动节放一天假

2011/04/27 00:04:40

先推荐下我一年前做的微博应用,月老爱配对 http://weibo.com/tyuelao 。当时做完后就没管了,没想到竟然在4.19号这天借facebook的光火起来了。因为最近有个新闻说facebook推出了一个叫暗恋的应用,跟我这个功能类似。很多人说我这个应用山寨了facebook。也真有可能是,但我已经记不清了,一年前的事了,太久远了。在这个社会主义初级阶段,崇洋媚外总算是个优点,我也就不是很在意了,逗了他们几下下

最近我算是悟透了一个道理,那就是吃小便宜占大亏

我的这个博客这几天换了个空间,因为vps挂了,还丢了些数据。便宜没好货啊,看来观音姐姐说的是对的。当初买的是15美元一年的nordicvps的128m的vps,当时追求的是性价比。的确性价比还是不错的,哪怕它不保证你数据的安全,自己做好备份,拿来玩还是超级好的。那个vps到现在还没恢复,而且老外的回复也很有意思,说数据恢复不了了,而且这几天复活节他们要休息,等过节了再修。谁让咱用的是便宜货呢,只能等了

买了个一美元三年的无限制的主机套餐,当测试空间是再好不过了。控制面板是cpanel的,cpanel的控制面板添加域名的时候,也可以不用把ns给指过去,只要保证你添加的域名还没有解析就可以了。你可以添完了再解析,若域名是已经解析过的,那就先删掉这个域名的记录。网上的这方面教程太少,走的还都是弯路。

买了个dreamhost的第一年9美元的套餐。结果又是因为贪便宜丢了一个我认为还不错的域名weibojiaoyou.com。我没有在第一时间去godaddy花钱注册,因为dreamhost的套餐里面有个免费域名,所以我就把这个域名绑在dreamhost的套餐上了。结果就是在我等待dreamhost审核的时候,第二天这个域名就被别人注册了,是个中国的域名代理商。这点我也想到过,但侥幸心让我忽略了这点,没想到真的被我碰上了。所以我甚至阴谋的认为,域名代理商和运营商勾结,在监听几个大域名商的注册域名的请求包

因为中国很多人用dreamhost乱搞,所以dreamhost的优惠套餐对中国用户审核很严。我的等了三天还没审核下来,于是我就每天发一封ticket,最后一封很严厉的对他们说,要么通过,要么赶紧退钱,老子是个很穷的中国人。结果竟然顺利通过审核了。可能他们考虑了中国的人权状况,发了善心。

这几天又贪图便宜注册了雅虎的1.99美元优惠域名,结果很快就被删掉了,因为很多中国人用这些优惠域名做垃圾站,然后也不续费。可悲的是域名已经被雅虎注册了,等它那失效还不知道具体是哪天,可能会被别人注册。所以我只能硬着龟皮头再去reactive,交足了全额,不敢再用优惠码,没想到还是删。换成注册两年的,还是删。最后无奈发了个邮件,问他们到底想怎么样,他们说可能是支付的卡出问题了。于是我又改用信用卡直接付费了,不走paypal了。现在还在等消息,又是贪便宜惹的麻烦

我这个蠢货,每天打车上班二三十,出去桌游加打车上百,出去踢球加打车上百,何苦去省那几美元。看来女人购物的愚蠢基因,男人骨子里也有的。大家享受的都是这个解决问题的过程

有域名空间需求的可以找我代购,价格合理,童叟无欺。重要的域名一定要第一时间就去注册,不要贪小便宜

Tags:,,,,,,, Posted in 学习资料,感想随笔1 条评论

firefox扩展:新浪微博图片粘贴

2011/04/21 02:04:11

花了两个晚上写的,在windows下预期功能全实现了
支持发微薄时粘贴图片,直接ctrl+v或右键选择“微博图片粘”即可。图片来源可为本地复制,屏幕截图,页面上右键复制的图片等……目前只支持新浪微博

扩展地址在这 https://addons.mozilla.org/zh-CN/firefox/addon/timgpaste/

此扩展火狐那边的地址不知道为什么不好用了,新地址在这 http://lvwei.me/TImgPaste.xpi

update:目前也支持网易微博了~

Tags:,,,,, Posted in 学习资料1 条评论

腾讯微博xss

2011/04/21 02:04:06

这个博客在我玩完wordpress后就基本又没更新过了
真的有点愧对这个自己亲手改的完美(虽然别人不承认)的豆瓣风格皮肤了
我很奇怪我都改成豆瓣风格了,为什么还没人来留言要求合体呢
难道豆瓣不是亚洲最大的色情交友中心么,难道小跑和大力是骗我的么
年纪大了,不写诗了,写点别的吧

今年是一个意义重大的一个一年
我突然想到,以我的年纪,经常晚上一次买三根冰棍边走边吃是有点不妥的了
哪怕我小时候一次能吃10根
年纪的量变,逼着我去质变
今年本打算竭力达成一个目标,不料有点变故让这个目标难度大了点
于是我又决定淡定的面对这一切
工作,学习,娱乐,睡觉,踢球,过好每一天

希望膝盖能快点好起来
希望苗苗中考成功
希望家人亲戚都开心顺利
希望中大奖

回到标题的内容
通过直觉找到了腾讯微博一个xss,火狐下无效,其他的好像都可以
没什么好玩的了,先攒着再说

Tags:,, Posted in 感想随笔1 条评论

国产3D爱情片《肉蒲团》预告片

2011/01/14 12:01:16

听说国产3D爱情片《肉蒲团》预告片出来了,而且好像还有无码露点镜头
我很愤怒,我不敢相信这是真的,这种预告片要是被青少年看到的话,那毒害得有多大啊
所以我去网上找到了这个预告片,看看到底有没有露点,如果有的话,我一定要把它揪出来
看完后,我震惊了,好像真的有露,但我不知道我判断的是否准确
现在发出来让大家鉴别下,如果真的有露点的话,我们一定要记住这个视频的情节,下次遇到这个视频,坚决不传播
点击这里下载

Tags:,,,, Posted in 娱乐八卦我抢沙发

把新浪博客搬出来了

2011/01/13 15:01:02

把新浪博客搬出来了,弄了个独立的,用http://lvwei.me访问

用的是伍德派斯写的程序,主题用的是wlsy这个主题,感谢他,愿佛祖保佑他平安

自己也改了下css,往豆瓣的风格上靠了靠

用独立博客好处多多,控制自由,没人管得着,访客信息来源清晰,还能装逼,写诗也更有灵感

当然,最重要的原因是我花1.99英镑买了lvwei.me这个域名

花了这么多钱,不弄个博客怪可惜的

刚搭建好,可能还有很多问题

Tags: Posted in 感想随笔5 条评论

保护你的蠕虫,善待你的孩子

2010/11/29 00:11:19

今天测试了一个蠕虫,没干什么坏事
主要在保护蠕虫上下了点功夫
而且还给出了些错误的迷惑代码,能耽误别人修复BUG
果然蠕虫过了几个小时停了后,那个BUG还在,到目前还没被修复
饭否可能也还没发现,因为他们在处理了蠕虫后,却修复了知道创宇前两天公布的一个他们的BUG
那个BUG我也发现了,但看有人公布了,我就没再用了
具体我的保护蠕虫的方法,过两天有时间写一下
关于那个BUG,我也正在联系饭否

Tags: Posted in 网络安全5 条评论