记之前微信tickets的一次泄露

Posted by 跳跳龙 on March 25, 2019

(文章版权归笔者跳跳龙所有,谢绝转载,请勿拾人牙慧)

之前遇到过一次微信的tickets泄露问题,因为这个问题后来有人问过我,所以这里记录一下。

关于微信tickets,相信很多人都听说过。他的主要作用是可以实现本地微信唤醒。比如说我们用手机打开某个网页,经常在打开的一瞬间,页面会提醒你是否使用微信打开。

这个场景相信大家都遇到过。这里我理解的是微信这么做为了引流。

这个是一个请求的回包 也就是说如果访问这个链接 回包中带有微信的协议并且夹带着tickets参数,并且tickets合法争取 那么这个时候就可以跳进微信。

这个tickets本来腾讯是不对外开放的,只有和腾讯合作的一些大公司大厂商才可以有。

但是有些公司的tickets接口会对外暴漏遭到泄露!

这些条件的具备,导致了一种灰产的形成。

首先访问某一个链接 我们这里称之为A链接。A服务器通过泄露的tickets 回包中带有如下的tickets

tickets中记录了所要跳转的域名和实效性

然后这个时候的手机微信直接被唤醒(前提是tickets正确) 这个时候需要用户点击一下确认。

然后微信app被打开,打开之后就会访问tickets中的域名。

假设这个域名是和腾讯合作的一些大厂商。假设是B公司。这里会做域名校验的。

但如果B公司存在一个URL跳转漏洞的话就可以跳转到任意第三方服务器了 比如是C

一般C网站就会放一些黄色图片 售卖信息等。

这样的一股流程就是灰产的原理。

后续呢中我又发现其他的跳转方案,假如没有找到相应的URL跳转漏洞,还可以上传图片木马,做js跳转。思路都是各种各样,但是原理万变不离其宗。