正 文:
今天有客户网站中毒,遂从FTP下载所谓木马文件,本地运行后,生成一个com7.h.asp的文件,在图形界面下无论如何都无法删除。提示“删除文件或文件夹时出错,无法删除 com7.h : 找不到指定文件”。
其实这是利用系统保留文件名来创建无法删除的webshell。
Windows 下不能够以下面这些字样来命名文件/文件夹:
aux|prn|con|nul|com1|com2|com3|com4|com5|com6|com7|com8|com9|lpt1|lpt2|lpt3|lpt4|lpt5|lpt6|lpt7|lpt8|lpt9 但是通过cmd的copy命令即可实现:
D:\>copy piaoyi.asp \\.\D:\lpt6.piaoyi.asp 前面必须有 \\.\
这类文件无法在图形界面删除,只能在命令行下删除:
D:\>del "\\.\D:\lpt6.piaoyi.asp"
D:\>del "\\.\D:\lpt3.1.asp;.jpg"
如果提示找不到文件错误,则可以先解除
RHSA只读属性:
D:\>attrib -s -h -r "\\.\D:\lpt3.1.asp;.jpg"
D:\>del "\\.\D:\lpt3.1.asp;.jpg"
注意:因为路径中有分号; 所以需要用
双引号,否则,路径找不到。
然而在IIS中,这种文件又是可以解析成功的。Webshell中的 "不死僵尸" 原理就在这。
删除这类文件可以用下面的方法:
最简单也是最方便的,通过命令删除:
del /f /a /q \\?\%1
rd /s /q \\?\%1
把上面的命令保存为.bat后缀名称的文件,然后把不能删除的文件或者文件夹拖到bat文件上就可以。
补充:
WINDOWS系统属性符号说明 文件夹的属性有:无,H,HS,HSA,R,RA,RH,RHA。
文件的属性有:A,RA,RSA,RHSA。
其中:H(Hide)-隐藏、S(System)-系统、R(Read only)-只读、A(Archive)-存档。
具体修改可以从下面的知识了解:
要更改文件的属性,可以用DOS下的命令
比如,在G盘下新建立一个O.TXT文件
进入DOS界面进入G盘根目录下
使用命令
attrib +a +s +h +r o.txt 那么文件o.txt就具备了HSA的属性
使用命令>
attrib -a -s -h -r o.txt 那么文件o.txt就消除了HSA的属性
PS: 请立即检查图片上传程序:
IIS原理分析,IIS对于
xx.asp;.jpg.jpg 这样的文件会自动以asp文件解析,这也形成了一个非常明显的漏洞。
入侵流程分解:我们通过探测获取到上传图片的文件路径,将木马文件以“
xx.asp;.jpg”的命名直接进行POST上传,这样可以绕过程序对于文件后缀名的检测,这里是正常的 .jpg,所以程序允许上传。
虽然在接下来的检测中,程序发现这个文件不是图片,那么正常的逻辑是应该删除刚才上传的这个临时文件。
但重点来了,如果程序没有做容错处理,这个页面直接报错了,也就不会删除刚才上传的临时文件。以刚才的那个文件名为例“xx.asp;.jpg”,上传后的临时文件名为“xx.asp;.jpg.jpg”,而这个文件可以被iis当做asp文件解析了,木马正式生成。php程序原理类似。
参考:
1、删除webshell中的不死僵尸
http://sshwolf.blog.163.com/blog/static/12089442011112641742728/2、删除LPT、AUX、COM、PRN、NUL、CON开头的文件,RHS文件删除
http://www.lianglong.cq.cn/post/ShanChuLPTAUXCOmpRNNULCONKaiTouDeWenJian-RHSWenJianShanChu.html