|
作者: 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号