2024年3月28日发(作者:)

QQ分析

QQ版本升级比较频繁,每次升级都对应着协议的变化或者加密方法的更改。针对QQ

的分析网上资料林林总总,对不同版本都有一定的分析,但都没有彻底的分析。这里总结

了一部分资料,加入了一点点我自己针对QQ抓包后的分析。

QQ功能分析:

登陆:

首先QQ客户端向服务器发送一个请求登录令牌的数据包.服务器返回登录令牌.这个

令牌是在服务器端生成的.和客户端的IP地址,版本信息等数据相关.以后会用到这个令牌去

进行其他操作. 在QQ通信中用户必需要登录后才可以进行互相发送信息等。QQ的登录

是很关键的,大家所看到的用户在线 ,并不是用户的QQ一直连接着服务器,而是定时发

送消信给服务器,证明自己还连着线,如果超出时间QQ 就认为用户已经掉线了。

登陆QQ服务器的时候,服务器会保留你的保留IP地址和端口号信息,并在你的好友

的QQ进程中进行列表显示,然后两个进程就可以通信了。

QQ连接服务器的方式,它主要有3种方式:1.通过本机UDP:4001开始的端口连接服务

器UDP 8000端口;2.通过本机任意端口连接服务器80端口;3.通过通过本机任意端口连接

服务器443端口。

QQ使用UDP端口8000做为主要的通讯端口,并提供HTTP(80)和HTTPS(443)

端口做为辅助的通讯方式。 登陆时,QQ首先尝试去连接服务器的8000端口,如果不通

的话就会依次去尝试80和443端口。

登录过程中的包(均是UDP传输)分析:

1. 0x0091 Touch包

该数据包是QQ客户端登录时发送的第一个包,它的作用在于测试远程服务器是否能

够正常响应,根据我们的抓包分析,对于不同的QQ号码段,提供服务的QQ服务器是不

相同的,对于QQ会员有专门的QQ会员服务器。在对QQ客户端的回应包中,如果连接

的服务器不对该 QQ号码提供服务,它会返回另外一个服务器地址,让客户端重新连接该

地址。

2 0x00BA获取验证码

因为部分QQ号码可能存在异地登录,或者QQ号码被盗发送大量垃圾信息,或者用