大家有时打开某网页或是扫描二维码又或是运行某应用程序后
经常会看到QQ空间会自动转发说说,即使我们并没有输入QQ账号及QQ密码
今天我们来分析其原理得知其转发机制
既然软件编程能做到这些,我想网页编程自然也可以实现。
我想大概是因为TX的某个产品的某个页面下存在一个XSS漏洞,由于没有对请求参数做严格检查
通过精心构造的请求数据导致返回信息中的数据可被利用来执行js代码,同时服务器没有对请求来源进行检测,因此可以造成CSRF攻击。
一般标签style为隐藏属性,从而使得该插入页面不会被用户发现,插入的页面链接就是构造好的url地址。
当页面被加载时,页面通过这个url接口向服务器发送一个请求,服务器没有对请求来源进行效验,直接将请求的数据返回
然后通过插入的代码,获取用户的cookie,然后从中提取uin值和skey值,通过抓包可以看到
再使用curl命令通过发表说说的api向服务器发送一个包,就可以达到自动发送说说的目的了
Skey 是一次性口令,服务器为每个用户建立一个skey作为用户的权限代码,服务器验证该值即可获取用户的一些权限操作
该值会被浏览器记录在cookie信息中,只要用户不退出登录就会有效。也就是说如果获得一个QQ号码的Skey代码
也就相应的拿到了对方QQ登陆和管理权限,通过调用相应的操作接口API,即可不通过用户密码实现对用户空间,相册的访问权限,同时也可以发表说说,删除留言等一些敏感操作。
最好的办法就是不要随意点击一些不良网站信息,如果不小心中招,解决方法就是快速退出空间
如果是手机登录的话就要退出QQ,重新登陆QQ,这样会产生新的skey,原来的skey就失效了。
如果是单纯的刷新网页,并不会使skey失效。
版权属于:Xcnte' s Blog(除特别注明外)
本文链接:https://cloud.tencent.com/developer/article/1918274
本站文章采用 知识共享署名4.0 国际许可协议 进行许可,请在转载时注明出处及本声明!