查看: 12440|回复: 14

SQL Slammer蠕虫的数据包

[复制链接]
发表于 2009-3-25 11:00:07 | 显示全部楼层 |阅读模式
在Internet上大规模爆发的蠕虫病毒最早于03年1月25日现身,之后以极快的速度在Internet 的服务器上大面积传播。
SQL Slammer蠕虫病毒本身仅仅只有376字节,比红色代码4KB(4096字节)和尼姆达60KB(61440字节)小的多。它利用一个微软六个月前就已经宣布并且可以打补丁的漏洞(Microsoft SQL Server 2000 Resolution服务远程栈缓冲区溢出漏洞),通过自我繁殖使得计算机间无法通讯。它体积小到仅需使用一个数据包就可以发送自身所有代码,数据包中Slammer载入内存后计算机就受到了病毒感染。。
SQL Slammer蠕虫发送一个数据包(数据就是蠕虫代码本身),但通过发送超长字符串(使用第二个字符串)来摧毁堆栈。实例名称被认为是16个字节,但这个长度并没有进行检查。新返回指针地址为0x42B0C9DC。这个返回的地址指向sqlsort.dll中的一条JMP ESP指令。它使用sqlsort.dll来调用LoadLibrary()和GetProcAddress()函数。这些函数帮助Slammer获取对WS2_32.dll 和kernel32.dll的访问权。这些动态库帮助Slammer得到了Socket()、SendTo()和GetTickCount() API的地址,这三个函数用于复制病毒。
接着,SQL Slammer蠕虫向随机IP地址的UDP 1434端口发送自己。这个发送过程无限循环,它不仅在网络上填满了该病毒,而且引起CPU的利用率达到峰值,从而导致成千上万台受感染主机发起DoS攻击。
    蠕虫利用UDP/1434端口,该端口用于SQL Server Resolution服务。当SQL Server Resolution服务在UDP 1434端口接收到第一个字节设置为0x04的UDP包时,SQL监视线程会获取UDP包中的数据,此时攻击者可以通过在这个UDP包后追加大量字符串,当尝试打开这个字符串相对应的数值时,会发生基于栈的缓冲区溢出。当溢出成功后,蠕虫取得系统控制权,开始向随机IP地址发送自身代码,这一过程将无限循环,因此发送的数据量非常大,极大的占用了被感染机器的系统资源及所在的网络资源。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?CSNA会员注册

×
回复

使用道具 举报

 楼主| 发表于 2009-3-25 11:02:11 | 显示全部楼层
再看看《SQL蠕虫病毒分析—语音视频教程连载九》
SQL蠕虫病毒是一个能自我传播的网络蠕虫,利用Microsoft SQL Server 服务远程堆栈缓冲区溢出漏洞,通过监听TCP 1433或者UDP1434端口传播,它会试图在SQL Server系统上安装本身并借以向外传播,从而进一步通过默认系统管理员SQL Service帐号威胁远程系统。
通过下面的演示,您将了解到如何通过科来网络分析系统查找感染SQL蠕虫病毒的主机。
见本论坛http://www.csna.cn/forum.php?mod ... &extra=page%3D1
回复

使用道具 举报

发表于 2009-3-26 10:55:47 | 显示全部楼层
感谢楼主的分享,很宝贵的数据!
回复

使用道具 举报

头像被屏蔽
发表于 2009-4-19 00:12:50 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

发表于 2010-5-16 19:31:55 | 显示全部楼层
收下了~~~感谢LZ分享~~~~~~~~~~~
回复

使用道具 举报

发表于 2010-5-19 12:15:16 | 显示全部楼层
下载都要钱啊
......
zhenshi wu yu l
回复

使用道具 举报

您需要登录后才可以回帖 登录 | CSNA会员注册

本版积分规则

快速回复 返回顶部 返回列表