通过 QQ 客户端登录 Web 邮箱的身份认证漏洞

2017-06-12 12:04:44 +08:00
 paicha

macOS 重现步骤:

打开 QQ,进入应用 tab,点击 QQ 邮箱,这时候会打开浏览器访问一个 HTTP 地址:

http://ptlogin2.qq.com/qqmail?Fun=clientlogin&clientuin=xxxx&clientkey=xxxx&ptlang=xx&keyindex=xx

在跳转到邮箱前,拷贝这个地址,退出 QQ 客户端,在 Chrome 隐身窗口打开上述地址,成功登录邮箱。

https://twitter.com/yurii_yu/status/873225250955120640

5089 次点击
所在节点    全球工单系统
28 条回复
jarlyyn
2017-06-12 14:23:38 +08:00
@paicha

php 的 session 本来就能加在 url 里

http://php.net/manual/zh/session.idpassing.php
popok
2017-06-12 14:52:59 +08:00
这个问题最早可以追溯到我上初中那会,也就是 04 年的样子,当时腾讯的很多业务都能用这种 url 登陆,那时候还有人骗别人发这种 url 给自己。

后来腾讯解决了这个问题
paicha
2017-06-12 15:02:01 +08:00
@jarlyyn #21 能并不代表应该这么做。云风在 Twitter 上的回复也已经够清楚了,不再累述。
lslqtz
2017-06-12 17:20:44 +08:00
加个 https 解决。。
honeycomb
2017-06-12 17:25:19 +08:00
这样的链接应当强制使用 HTTPS,并且只能使用一次
mingyun
2017-06-12 23:01:30 +08:00
php 的 session 默认在 cookie,也可以在 url 上
lesloli
2017-06-13 10:54:49 +08:00
我有一个大胆的想法
Devmingwang
2017-06-13 18:51:57 +08:00
这个 Bug 是没有的,你换个浏览器你会发现其实不行。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/367777

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX