HACK80 首页  立即注册  登录
现在注册
已注册用户请  登录
HACK80    技术文档

水坑攻击之Jsonp hijacking-信息劫持

  djg222000 ·2018-2-3 08:30:01·773 次点击 ·阅读模式     

马上注册,加入HACK80!与我们一起交流。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
0X01 Jsonp hijacking作用
这是一种基于水坑攻击的攻击方式,用于大规模的获取用户信息,因为可以绕过同源策略的限制而展开,所以其威力巨大,尤其是在一些大型网站的接口处,用此方法可以盗取已登陆用户的敏感信息从而进行进一步的攻击。
0x02 劫持原理
在说原理之前,首先需要了解js中callback函数的作用,callback是js中的回调函数,这个函数的用处在于它自己是个函数,但是他会将自己作为参数传给另一个函数,并且在父函数执行完成之后再执行。
借用这个原理,我们来试试跨域加载数据:
这是人人网的一个接口,用于显示用户信息
在没登陆的时候,可以看到图中的信息,提示未登陆用户。然后我们本地构造劫持代码,建立evil.html文件。
注意到我在url中添加了参数callback=run,这样就会导致url在被加载完成之后会继续加载我们的run函数,本地访问网页:
输出了-110,可以看到,我们成功跨域加载了数据到本地域中,但是这有什么作用呢?还是以一个例子尝试,我们登录人人网后来访问这个API
可以看到,返回了用户的敏感信息,我们根据此json返回数据来修改我们的恶意代码文件evil.html
本地访问evil.html
成功在本地域劫持到用户信息。这个漏洞的利用条件就是需要用户访问我们构造的恶意界面,当然如果我们将这些代码放在用户访问量比较大的网站上,其成功率就可大大提高。至于如何将本地的劫持到的数据存储下来,就没必要多说了。
0x03结论
这种技术想来也是用在APT攻击中的,而且是大规模的数据窃取,作为一种技术手段还是很有用的,不过首先你要有一个大型网站的存储xss或者你自己的博客比较火火火火……

773 次点击  
收藏  转播  分享
添加一条新回复
您需要登录后才可以回帖 登录 | 立即注册

本节点积分规则
QQ
小黑屋   ·   手机版   ·   376 人在线 最高记录 5500   ·   TOP
我们很年轻,但我们有信念、有梦想!

  我们坚信只有今天付出了,才有机会看到明天的太阳!现在!加入我们,给你一个气氛优秀的技术圈子。  
GMT+8, 2018-8-21 14:04, Processed in 0.046041 second(s), 18 queries .