网站地图    收藏   

主页 > 后端 > 网站安全 >

天涯某处设计缺陷可劫持用户账号及修复方案

来源:自学PHP网    时间:2015-04-17 10:16 作者: 阅读:

[导读] 问题在于天涯的手机版:http: m tianya com手机版的登录认证是靠url中三个参数来进行验证的:http: m tianya cn index jsp?idwriter=81847003key=*********chk=********************************idwrite是用...

问题在于天涯的手机版:
 
 
http://m.tianya.com
 
手机版的登录认证是靠url中三个参数来进行验证的:
 
 
http://m.tianya.cn/index.jsp?idwriter=81847003&key=*********&chk=********************************
 
idwrite是用户的uid,key和chk是主要的认证字符串。
 
只要有这个url就能登录对应idwrite的用户了。
 
那么我们从哪能拿到这个url呢?这就是问题所在,下面看看我们如何获得到用户的则个url。
 
首先,我们发一个微博,里面带上一条url,让其他用户去访问这个url,只要有用户访问我们这个url,那么他就会被我们所劫持,也就是我们就拿到了这个url。
 
发送的这个微博中的url内容如下:
 
 
<?php
$file = fopen("header.txt","w");
foreach (getallheaders() as $name => $value) {
fwrite($file,"$name: $value\n");
echo "$name: $value\n";
}
fclose($file);
?>

 

 
就是获取访问这个url的请求头,然后写入文件。
 
 
然后我们点击访问这个url看看什么效果:
 
url就被我们抓到了:
 
 
通过上面的过程看到了,我们主要是通过请求头里面的Referer获取到url的。
 
然后我们就可以那Referer的url登录这个用户了。
 


 
为了劫持其他用户,我们可以把这个url发到我们自己的空间,然后发布诱惑力很强的微博,诱使用户访问,或者通过私信发送到其他用户诱使用户访问这个url。
 
这样就可以劫持任意用户了。 

 
修复方案:

非本域,就不要发送Referer啊 
 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论