第六回:漏洞缠身的CMD

网络安全

危险等级:★★★★★

曾经案例:“爱情后门”病毒自带FTP服务器端,它会在15436端口提供一个FTP服务,这样病毒就可以通过建立一个下载脚本文件来从被感染计算机上下载病毒可执行文件。病毒会使用Windows的程序CMD.exe写文本文件,并使用该文件来下载病毒可执行文件,病毒会不停调用CMD.exe程序。

什么是CMD.exe

“谭教授,不好啦。我的计算机系统又中病毒了。”,悟空一个跟斗云来到教室大声地说道。八戒急切地问道:“知道中的什么病毒吗?”,悟空大声回答道:“魔波!”。八戒接着问道:“那么你知道这个病毒是由什么原因引起的吗?漏洞如何被利用的吗?”“当然知道!由于Windows系统存在Server服务远程缓冲区溢出漏洞,而病毒正是利用这个漏洞形成的。”

站在教室外听到两人的对话后,谭教授微笑着走进教室说:“各位同学,今天我们就讲解和漏洞利用关系非常紧密的一个进程——CMD.exe。”。

小知识:CMD.exe是微软Windows系统的命令行程序,类似于微软的DOS操作系统。CMD.exe是一个纯32位的命令行程序,运行在Windows NT/2000/XP/2003系统上。

CMD被利用的危害

唐僧不解地问:“它只是一个命令行程序,并没有和漏洞利用有任何的联系啊?”谭教授解释道:“这个要从漏洞利用工具的编写说起。漏洞利用工具实际上是由一组可以完成黑客想要的功能的机器代码编译成的。最常见的方法就是打开CMD窗口的代码,从而使黑客得到一个可以进行远程交互式操作的Shell,这样就完成了系统漏洞的利用操作。所以说在漏洞利用这方面,CMD还是起到了关键性作用”。

沙僧接着问道:“得到了一个远程的CMD窗口,黑客能干什么呢?”教授笑着说:“得到这个CMD窗口后,黑客能干的事非常多。比如安装程序,查看、更改或删除数据,或者创建拥有完全用户权限的新账户。简单地说,就是在本地的CMD窗口可以实现的功能,在这个远程的CMD窗口中也同样可以实现。这个时候黑客就能主宰这台远程计算机的命运了。”。

小提示:除了被系统漏洞利用之外,CMD还在很多时候被恶意使用。这主要是由于CMD并不单是一个系统程序,很多的时候是以一个程序平台的面目出现的。比如FTP、TFTP、FORMAT等这些小工具都是基于CMD这个平台才能成功运行的,否则都成为了系统中的摆设。这其中要数恶意的批处理文件危害最大。

防范措施

唐僧也不甘示弱地问:“教授,何谓‘批处理文件’?”“后缀是bat的文件就是批处理文件,它其实是一种文本文件。简单地说,它的作用就是自动连续执行多条命令,批处理文件的内容就是一条一条的命令。通过这些命令可减轻繁琐的重复劳动。在我们的系统中就存在很多批处理文件,autoexec.bat就是其中非常典型的一个。”教授解释道,“但是批处理文件本身没有对错之分,但是里面的命令却有。比如黑客常常利用Remote Administrator这款远程控制软件进行远程控制。但是它的服务端程序的安装却非常复杂,就需要用到批处理文件才能顺利地安装好服务端程序(图1),从而接受客户端程序的远程控制操作。”。

46-f9-1.jpg
图1

沙僧警惕地问:“有没有什么方法可以有效杜绝进程CMD.exe被非法使用呢?”“可以编写一个批处理文件来进行CMD.exe的加密处理。这样当CMD.exe使用时,就会提示用户输入一个密码(图2)。如果密码输入错误的话,CMD窗口就会自动关闭。”

46-f9-2.jpg
图2

“除了进行CMD.exe加密以外,还有其他的防范方法吗?”悟空疑惑地问道。“防范的方法有很多种,比如通过策略组的设置就可以禁止CMD.exe的使用。首先单击开始菜单中的‘运行’命令,在窗口输入‘gpedit.msc’后打开策略组编辑器。然后在组策略控制台中找到‘用户配置’,接着选择‘管理模板’下的‘系统’选项,然后在右侧窗口找到‘阻止访问命令提示符’并打开它。在弹出的属性窗口中选择‘启用’,并在 ‘也停用命令提示符脚本处理吗?’项选择‘是’(图3),从此以后批处理文件.CMD和.bat将不能在该计算机上运行。”。

46-f9-3.jpg
图3

下节课谭教授将为同学们讲解另一个和CMD.exe作用相似的系统的高危进程——wscript.exe & cscript.exe。