小七烤地瓜 发表于 2015-8-12 11:21

QQ post系列之登录

小菜要写QQpost系列的了   继续装逼走起抓包地址:http://qzone.qq.com/?s_url=http://user.qzone.qq.com/+你的QQ号
同样当你输入完账号将光标切换到密码输入框的时候这时候 返回来一个check封包那是判断你的账号是否需要验证码的包 这个包 有重要作用   以后会用到 我们复制出来看一下

返回的封包:http://check.ptlogin2.qq.com/check?regmaster=&pt_tea=1&pt_vcode=1&uin=1158184029&appid=549000912&js_ver=10131&js_type=1&login_sig=vrgxiJz07vx-2bD8ZuxSHmo39X2368YlDuAs1SLpQngRSGhCf0sh9JYUHaVFZddw&u1=http%3A%2F%2Fqzs.qq.com%2Fqzone%2Fv5%2Floginsucc.html%3Fpara%3Dizone&r=0.4377816805497903
我们看看这里面有哪些参数
uin=1158184029QQ号
appid=549000912这应该是常量 不变的值 不用管
login_sig=vrgxiJz07vx-2bD8ZuxSHmo39X2368YlDuAs1SLpQngRSGhCf0sh9JYUHaVFZddw这个肯定是动态的参数了
r=0.4377816805497903   0-1的尾随机数不用管
我们来获取ogin_sig参数的值直接在httpwatch搜索 这个参数值


我们搜到了是在这个封包里面获取到的大家注意右下角他并不是在返回的文本里而是在这里获取到的这里是什么呢 是这个封包的返回协议有时候很多参数都在一个封包的返回协议里 而不是单纯的返回文本里    好   我们再来看这个地址
http://xui.ptlogin2.qq.com/cgi-bin/xlogin?proxy_url=http%3A//qzs.qq.com/qzone/v6/portal/proxy.html&daid=5&pt_qzone_sig=1&hide_title_bar=1&low_login=0&qlogin_auto_login=1&no_verifyimg=1&link_target=blank&appid=549000912&style=22&target=self&s_url=http%3A%2F%2Fqzs.qq.com%2Fqzone%2Fv5%2Floginsucc.html%3Fpara%3Dizone&pt_qr_app=手机QQ空间&pt_qr_link=http%3A//z.qzone.com/download.html&self_regurl=http%3A//qzs.qq.com/qzone/v6/reg/index.html&pt_qr_help_link=http%3A//z.qzone.com/download.html
撘眼一看这个并没有参数其实这也正常 如果一直这样 一个封包套着一个封包下去那还有完没完了 要知道编写这么一个网页也是很费劲的
我们直接网页访问这个地址代码如下

再次说明不是在他的返回文本里 而是在她的 返回协议里获取到login_sig输出调试一下

我们已经获取到sig的值了 文本取中间把它取出来    然后 我们返回到   验证码的 check包 参数值获取到了   我们就网页访问看他会不会返回的文本跟httpwatch返回的一样

看到了 果然获取的一样   我们分别把参数取出来 放进指定的变量里 有大用...


我们看到 第一个 是iSFX   这个就是验证码了服务器判断你的账号不需要验证码 那么这个参数就是i开头后面三个大写字母四个长度 如果需要验证码第二个参数就会变成第一个参数 而第二个参数就会使一串 00\00什么的
ok这个封包可以说搞完了 那么 继续我们的 登录包地址
http://ptlogin2.qq.com/login?u=1158184029&verifycode=!ZAD&pt_vcode_v1=0&pt_verifysession_v1=f758baf86ab47b3c9689ca8f4ce791ce05f430c44bac04ea3e844e4c43922344971a7bd360a7cfad03d0cb293906f28cd7664985677978e2&p=XXXXXXXXXX&pt_randsalt=0&u1=http%3A%2F%2Fqzs.qq.com%2Fqzone%2Fv5%2Floginsucc.html%3Fpara%3Dizone&ptredirect=0&h=1&t=1&g=1&from_ui=1&ptlang=2052&action=5-27-1439344167970&js_ver=10131&js_type=1&login_sig=vrgxiJz07vx-2bD8ZuxSHmo39X2368YlDuAs1SLpQngRSGhCf0sh9JYUHaVFZddw&pt_uistyle=32&aid=549000912&daid=5&pt_qzone_sig=1&
u=1158184029账户名 也就是QQ号
pt_verifysession_v1=f758baf86ab47b3c9689ca8f4ce791ce05f430c44bac04ea3e844e4c43922344971a7bd360a7cfad03d0cb293906f28cd7664985677978e2大家看看这个是不是和我们的 验证码 check包里 返回的那一段一样的   所以说这个参数值我们已经有了
p=XXXXXXXXXX   还用说肯定是密码了
login_sig=vrgxiJz07vx-2bD8ZuxSHmo39X2368YlDuAs1SLpQngRSGhCf0sh9JYUHaVFZddw又看到这个sig了 我们一开始就把他获取到了
其他的就没了 重要的参数就这几个除了密码的 其他的参数我们都有了主要是说说 密码的加密


这就是加密后的密码 有这么多 你要做他的post登录就得明白他的密码是如何从一串明文密码 加密到这种状态的其实一样 md5算法 只不过 他这个md5脚本加密了我们明眼看不出来这里用到一个工具   JS调试工具


为什么要用它接着往下看我们搜索md5或者js   搜索到

这就是他的md5加密脚本    现在你看他根本就看不出所以然来 那是因为加密了eval加密
我们用JS调试工具 解密一下看图片


如果你解密后 看到这一段 那就表示你已经找对了我们就利用他来实现密码的加密 在JS调试工具里 搜索password


前面那个就是加密密码试用的函数我们把整个js复制进常量里 利用这个函数进行加密还有一点值得一提的是 他的加密 不光是执行js脚本md5加密 还会加上验证码一块算还记得我们之前获取的那个check封包吗 分别返回了两个参数如果你的账号不需要验证码 那么就要用到第一个参数了 就是 i后面三个字母


密码解决了继续提交吧代码如下



ok登录成功小菜装逼完成 闪人了 {:5_188:}有时间在写 说说赞评论方面的   吃饭去了..{:5_116:}

胡一飞 发表于 2015-8-12 11:23

沙发,好作品,已评分。也来个沙发奖励啊!{:5_116:}

HD学习 发表于 2015-8-12 14:22

直接上一个视频不就OK了文字打那么多累不累啊

治愈先生 发表于 2015-8-12 14:47

首先先谢谢小七师傅!最近工作里,遇到一个问题。想通过易语言写个东西偷个懒。刚刚看您这个大概的思路过程,说实话突然灵光一闪。我想我知道该怎么下手了{:5_123:}

1325266720 发表于 2015-8-12 17:02

感觉帖子高大上,就是看不懂{:5_188:}

小七烤地瓜 发表于 2015-8-12 17:04

治愈先生 发表于 2015-8-12 14:47
首先先谢谢小七师傅!最近工作里,遇到一个问题。想通过易语言写个东西偷个懒。刚刚看您这个大概的思路过程 ...

师傅努力 {:5_116:}

小七烤地瓜 发表于 2015-8-12 17:05

1325266720 发表于 2015-8-12 17:02
感觉帖子高大上,就是看不懂

垃圾帖子 不入师父的法眼{:5_188:}

332394 发表于 2015-8-12 20:34


大神表达了什么,看不懂

yugelaiy 发表于 2015-8-12 21:08

屌丝男 发表于 2015-8-12 21:28

感谢分享http://bbs.huorong.cn/?fromuid=14556
页: [1] 2 3 4
查看完整版本: QQ post系列之登录