论坛: 菜鸟乐园 标题: 关于QQ的拒绝服务漏洞 复制本贴地址    
作者: pkjsj [pl521]    论坛用户   登录
最近发现了QQ的一个bug,QQ在通讯前会进行一系列的包认证过程。其中,我发现了重发一些请求包可能会导致QQ拒绝服务(D.O.S)。同样的情况也适用于攻击移动梦网的手机!

攻击过程如下:
[假设]
我的QQ是:123456
我要攻击用户A的QQ,号码是:999888
我要攻击用户B手机,号码是:13801234567
我的IP是:1.2.3.4
QQ服务器IP是:5.6.7.8

[步骤]
1.我在我的QQ里面 查找-->自定义查找--->通过对方的QQ号码--->输入123456 -->下一步 ---> 添加用户B
2.然后,QQ提示:对方需要验证你的身份,请输入你的请求信息按发送键
3.随便输入一些信息,如“我是A,请你加我。”,但暂时不按“发送”键
3.启动捕获工具,开始捕获源端口号为4001的所有udp包(可以使用各种的sniffer)
4.此时,在qq上面按“发送”,于是,qq就向QQ服务器发出加B为好友的请求包
5.然后,我将捕获到两个udp包如下:
NO Time    Frame Protocol 源地址  目的地址 源端口 目的端口
0  19:22:21:112 IP  UDP  1.2.3.4  5.6.7.8  4000  8000
1  19:22:21:124 IP  UDP  5.6.7.8  1.2.3.4  8000  4000

注意,NO=0的包就是我对B的请求包:里面含有信息“我是A,请加我。”
6.我将NO=0的包截取下来,重发,用户B不能屏蔽这些请求,也就是说,B会收到大 量请求信息,即使B将A加入黑名单也无济于事。我的测试证明,网络快的地方,通常可以让重发请求包速度加快,比如100包/s, 这样的话,用户B的qq就会给这些垃圾的请求包淹没。我还测试了移动qq,我把我的一个同学的手机用作测试,发现连续发15个包,就把他的手机灌满,方法也是与上面的方法相同,只需要捕获一个信息包重发就行了。在对手机的攻击中,我发现,发重发包的速率不能太快,不然重复的包会过滤掉,我觉得每2-5秒重发一个包很合适,足以在短时间内让对方用户的手机灌满垃圾信息。

[扩展攻击]

在普通的局域网中,黑客X可以设计一个黑客工具,专门捕获发QQ用户A发送去B手机的信息,重发会让B误以为A对他进行攻击。跟可怕的是,如果针对sms.163.com的收费服务进行攻击,可能会导致某些用户的巨额损失。然而,无法跟踪黑客X,因为它做的只是监听然后重发一些udp包,这很明显是QQ协议中的一些漏洞,需要修改认证协议。

[解决方法]

我正在构思一种解决该漏洞的方法,主要是在底层截获udp包的时候,把包送去一个固定长度的缓冲区,然后对该缓冲区扫描。这样做无疑会加重用户系统的负担,所以,建议在下一版本的QQ中加入,这可是腾讯的工作了



地主 发表时间: 04-03-06 16:40

回复: z7 [skyzz]   论坛用户   登录
好 很好的想法 顶

B1层 发表时间: 04-03-06 17:18

论坛: 菜鸟乐园

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号