| 
 | 
 
 
 
提醒:不要擅自破解别人qq相册密码哦,不道德的哦,否则后果自负哦!!!  
 
根据http://izone.qq.com/client/photo ... &album=31931732  
下载或者翻看Internet临时文件夹下的 photo_password 文件可查到下列语句:  
type="text/JavaScript" src=http://www.eiyes.com/info/way/"/js/md5.js"></script>  
document.cookie=("album"+albumId+"pwd="+hex_md5(pwd));  
对比 md5.js文件可知,此v2.1版本的 JavaScript MD5,且输入的密码转化为32位的字符串。  
 
比较两个地址:  
http://photo.qq.com/cgi-bin/izon ... mp;albumid=31931732  
/*http://izone.qq.com/client/photo ... amp;album=31931732/这个地址类似可以不看*/  
(此地址为有密码情况下的登陆地址,要求输入密码)  
http://photo.qq.com/cgi-bin/izon ... asswd=&mode=big  
(此地址为无密码情况下的登陆地址)  
 
由此可以推断出:  
http://photo.qq.com/cgi-bin/izon ... 1931732&passwd=(****************)&mode=big  
******为转化后的md5字符串,此地址应该为此地址为有密码情况下的直接登陆地址。  
随便输入一段字符显示如下:  
<?xml version="1.0" encoding="GBK" ?>  
<error>密码有误,请重新输入!</error>  
考虑到在前面有密码情况  
 
的登陆窗口连接为cgi_album_pwd,浏览相册连接为cgi_album_view。   
试将登陆地址改为下列方式:   
http://photo.qq.com/cgi-bin/izon ... 1931732&passwd=(****************)&mode=big   
随便输入一段字符显示如下:   
<?xml version="1.0" encoding="GBK" ?>   
<data id="31931732" owner="23266229" passwd="81dc" />   
经过换算可知,1234的MD5值是81dc9bdb52d04dc20036dbd8313ed055   
测试数次   
<?xml version="1.0" encoding="GBK" ?>   
<data id="31931732" owner="23266229" passwd="1bbd" />   
密码:11111111 MD5:1bbd886460827015e5d605ed44252251   
<?xml version="1.0" encoding="GBK" ?>   
<data id="31931732" owner="23266229" passwd="eccb" />   
密码:3 MD5:eccbc87e4b5ce2fe28308fd9f2a7baf3   
由此可以判断,此处的passwd为密码加密后的前4位。   
photo_password 文件可查到下列语句:   
var p="";   
if (x!=null) p=x.selectSingleNode("/data").getAttribute("passwd");   
判断此passwd应该是数据库中的某字段名。   
if (p!="" && hex_md5(pwd).indexOf(p)!=0){   
alert("密码错误")   
document.getElementById("pass").focus();   
return;   
}   
document.cookie=("album"+albumId+"pwd="+hex_md5(pwd));   
location="/client/photo_static_big.htm?uin="+uin+"&album="+albumId;   
pwd为输入的密码,经过md5加密。判断此处出现的passwd="eccb"应该是验证输入的密文密码的正确性的。如果正确,使用hex_md5(pwd)进行登陆。   
 提醒:不要擅自破解别人qq相册密码哦,不道德的哦,否则后果自负哦!!! |   
 
 
 
 |