有关windows中的设备文件(aux,com1,com2,nul等)的介绍

发布时间:2020-10-24编辑:脚本学堂
windows下不能够以下面这些字样来命名文件/文件夹,包括:“aux”“com1”“com2”“prn”“con”和“nul”等,因为这些名字都属于设备名称,等价于一个 DOS 设备,如果把文件命名为这些名字,Windows 就会误以为发生重名,所以会提示“不能创建同名的文件”等。

    windows下不能够以下面这些字样来命名文件/文件夹,包括:“aux”“com1”“com2”“prn”“con”和“nul”等,因为这些名字都属于设备名称,等价于一个 DOS 设备,如果把文件命名为这些名字,Windows 就会误以为发生重名,所以会提示“不能创建同名的文件”等。

    当然,有一些特殊的方法可以偷机取巧,建立以这些设备名为名的文件夹,比如我们在命令提示符下执行“md C:aux”,就在 C 盘建了一个名叫 aux 的文件夹。此文件夹虽然可以访问,也可以建立子文件夹,但却无法删除,因为 Windows 不允许以这种方式删除设备。在系统看来,这个 aux 文件夹就是设备。

    那么,如何删除这样的文件/文件夹呢?我们只要按照完整的 UNC 路径格式,就是网上邻居的路径格式,正确输入文件路径及文件名即可。比如要删除 C 盘下的 aux 文件夹,可在命令提示符下执行:rd /s .C:aux,rd 是命令提示符删除文件夹的命令,/s 参数表示从所有子目录删除指定文件。再比如要删除 C 盘 temp 文件夹下的 nul.exe 文件,在命令提示符下执行:del .C:tempnul.exe 即可。


    在Windows下无法以设备名来命名文件或文件夹,这些设备名主要有aux、com1、com2、prn、con、nul等,但Windows 2000/XP有个漏洞可以以设备名来命名文件或文件夹,让木马可以躲在那里而不被发现。

    具体方法是:点击“开始”菜单的“运行”,输入cmd.exe,回车进入命令提示符窗口,然后输入md c:con命令,可以建立一个名为con的目录。默认请况下,Windows是无法建立这类目录的,正是利用了Windows的漏洞我们才可以建立此目录。再试试输入md c:aux命令,可以建立aux目录,输入md c:prn可以建立prn目录,输入md c:com1目录可以建立Com1目录,而输入md c:nul则可以建立一个名为nul的目录。在资源管理器中依次点击试试,您会发现当试图打开以aux或com1命名的文件夹时,explorer.exe失去了响应,许多“牧马人”就是利用这个方法将木马隐藏在这类特殊的文件夹中,从而达到隐藏、保护木马程序的目的。

    现在,我们可以把文件复制到这个特殊的目录下,当然,不能直接在Windows中复制,需要采用特殊的方法,在CMD窗口中输入copy muma.exe .c:aux命令,就可以把木马文件muma.exe复制到C盘下的aux文件夹中,然后点击“开始”菜单中的“运行”,在“运行”中输入c:aux muam.exe,就会成功启动该木马。我们可以通过点击文件夹名进入此类特殊目录,不过,如果您要试图在资源管理器中删除它,会发现这根本就是徒劳的,Windows会提示找不到该文件。

    由于使用del c:aux命令可以删除其中的muma.exe文件,所以,为了达到更好的隐藏和保护效果,下木马者会把muma.exe文件也改名,很难删除。具体方法就是在复制木马文件到aux文件夹时使用命令copy muma.exe .c:con.exe,就可以把木马文件muma.exe复制到aux目录中,并且改名为con.exe,而con.exe文件是无法用普通方法删除的。

 可能有的朋友会想,这个con.exe文件在“开始”菜单的“运行”中无法运行啊。其实不然,只要在命令行方式下输入cmd /c .c:con就可以运行这个程序了。在运行时会有一个cmd窗口一闪而过,下木马者一般来说会对其进行改进,方法有很多,可以利用开机脚本,也可以利用cmd.exe的autorun:在注册表HKEY_LOCAL_MACHINESoftwareMicrosoftCommand Processor下建一个字串AutoRun,值为要运行的.bat文件或.cmd文件的路径,如c:winntsystem32auto.cmd,如果建立相应的文件,它的内容为@.c:con,就可以达到隐蔽的效果。

     对于这类特殊的文件夹,发现后我们可以采用如下方法来删除它:先用del .c:con.exe命令删除con.exe文件(该文件假设就是其中的木马文件名),然后再用rd .c:aux命令删除aux文件夹即可。