当前位置:首页 > 娱乐

2018腾讯qq的漏洞

2018年5月,腾讯一个叫"QQ空间相册"的漏洞功能突然在部分用户手机上变成了"任意门"。你点开自己的腾讯相册,看到的漏洞可能是别人的私密照片——不是那种公开的,是腾讯设了密码或者仅自己可见的。这事当时没上热搜,漏洞但在技术圈里炸了锅。腾讯

我翻过当时的漏洞漏洞报告,问题出在QQ空间相册的腾讯访问接口上。正常逻辑是漏洞:你请求查看某个相册,服务器先验证你的腾讯身份,再检查这个相册的漏洞权限设置,最后决定给不给你看。腾讯但那个版本的漏洞接口把顺序搞反了——先返回了相册内容,再去做权限校验。腾讯就像你去银行取钱,柜员先把现金递出来,然后才问你密码对不对。

具体触发方式不复杂。用抓包工具改一下请求里的相册ID,把"albumid=12345"改成"albumid=12346",如果对方相册恰好没设额外加密,照片就直接加载出来了。有人写了个脚本遍历ID,一晚上扫了几万个相册。腾讯后来回应说"已紧急修复",但没提漏洞存在了多久、影响了多少用户。

这事有意思的地方在于,它不是那种高深的内存溢出或者SQL注入。就是接口设计时少写了一个if判断。开发人员可能觉得"先返回数据再校验"能省一次数据库查询,性能好一点。省出来的那几毫秒,换来了一个能看别人私密照片的后门。

我当时在V2EX上看到有人讨论,帖子很快被删了。有个回复让我印象很深:"你以为你的照片锁在保险柜里,其实柜子门是画上去的。"这话糙,但点到了本质。用户对"仅自己可见"的信任,建立在平台会严格执行权限控制上。一旦这个信任被打破,后面加再多加密、再多提示都没用。

更早一点,2018年3月,QQ还出过另一个漏洞。这次是QQ钱包的付款码。有安全研究员发现,在特定操作序列下,付款码的刷新机制会失效,旧码能重复使用。这意味着如果你截图了别人的付款码,理论上可以反复刷。腾讯的修复方式是强制刷新+缩短有效期,但没解释为什么会出现这种逻辑错误。

两个漏洞放一起看,能看出点东西。2018年的QQ正在从PC端往移动端猛冲,功能迭代快得离谱。每周都有新版本,每个版本都塞进去一堆新接口。安全审计的速度跟不上开发速度,有些代码可能都没经过完整测试就上线了。这不是腾讯一家的问题,那几年所有做社交的都在这么干。

我后来跟一个做移动安全的朋友聊过这事。他说漏洞本身不稀奇,稀奇的是腾讯的反应速度——从提交报告到修复,QQ空间那个用了不到48小时。这个速度在行业里算快的。但问题在于,修复完了就完了,没有公开的漏洞赏金计划细节,没有受影响用户的通知机制。你照片可能被看了,但你永远不会知道。

2018年之后,腾讯慢慢把安全响应中心做起来了,现在有明确的漏洞提交渠道和奖励标准。但那个时间点上的QQ,像一辆高速行驶时还在换轮胎的车。用户坐在车里,感觉不到轮胎松动,直到有人从外面把车门拉开了。

现在回头看,这些漏洞没造成大规模数据泄露,算是运气好。发现漏洞的那批人选择了提交报告而不是黑产变现。要是换个时间、换批人,结果可能完全不一样。技术圈有句话:安全不是产品,是过程。2018年的QQ,过程明显没跟上。

分享到: