防范WEB SHELL|hyenpkjvlg|鱼鱼|hyenpkjvlg|2005-03-02.11:19|hyenpkjvlg|6|hyenpkjvlg|做了1年时间的虚拟主机管理员,大概对NT下的WEB SHELL的防范也有一定的了解。现在通过整理一些高手的文章来说说如何防范WEBSHELL。常见的WEBSHELL也就是ASP,PHP,PERL,这些脚本写成的。市面上比较流行的WEBSHELL也就是海阳顶端网asp木马2005、桂林老兵的ASP站长助手(不知道算不算WEBSHELL,呵呵)、蓝屏ASP木马(好象有点过时了)、安全天使的phpspy2005、咖啡的PHP文件管理器1.6、cmd.cgi(PERL的我不熟悉,只知道这个)。本文的目的也就是要防范这些WEBSHELL。<br>防范这些WEBSHELL,首先是设置服务器的权限,禁止他们越权访问东西。服务器权限设置可以参考沉睡不醒整理的IIS FAQ<br>(http://fox.he100.com/showart.asp?art_id=121&cat_id=1),我这里就直接引用原文的内容了<br><br>9.如何让iis的最小ntfs权限运行? <br> 依次做下面的工作: <br> a.选取整个硬盘: <br> system:完全控制 <br> administrator:完全控制 <br> (允许将来自父系的可继承性权限传播给对象) <br><br> b.\program files\common files: <br> everyone:读取及运行 <br> 列出文件目录 <br> 读取 <br> (允许将来自父系的可继承性权限传播给对象)<br><br> c.\inetpub\wwwroot: <br> iusr_machinename:读取及运行 <br> 列出文件目录 <br> 读取 <br> (允许将来自父系的可继承性权限传播给对象) <br><br> e.\winnt\system32: <br> 选择除inetsrv和centsrv以外的所有目录, <br> 去除“允许将来自父系的可继承性权限传播给对象”选框,复制。 <br> f.\winnt: <br> 选择除了downloaded program files、help、iis temporary compressed files、 <br> offline web pages、system32、tasks、temp、web以外的所有目录 <br> 去除“允许将来自父系的可继承性权限传播给对象”选框,复制。 <br><br> g.\winnt: <br> everyone:读取及运行 <br> 列出文件目录 <br> 读取 <br> (允许将来自父系的可继承性权限传播给对象) <br> <br> h.\winnt\temp:(允许访问数据库并显示在asp页面上) <br> everyone:修改 <br> (允许将来自父系的可继承性权限传播给对象)<br><br>再单独对cmd.exe net.exe net1.exe ping.exe netstat.exe ftp.exe tftp.exe telnet.exe设置为只允许administrators组访问,这样就可以防范通过Serv-U的本地提升权限漏洞来运行这些关键的程序了,再删除cacls.exe这个程序,防止有人通过命令行来修改权限,呵呵。<br>再来去掉一些ASP WEBSHELL需要使用的一些组件,这些组件其实普通的虚拟主机用户也是用不上的。<br>很多防范ASP木马的文章都提到要删除FileSystemObject组件,但删除了这个组件后,很多ASP的程序可能会运行不了,其实只要做好了前面的工作,FileSystemObject组件能操作的,只能是自己目录下的文件,也就构成不了什么威胁了!<br>现在看来,还比较有威胁的组件就是Shell.Application和Wscript.Shell这两个组件了,Shell.Application可以对文件进行一些操作,还可以执行程序,但不能带参数,而Wscript.Shell可以操作注册表和执行DOS命令。<br><br>防范Wscript.Shell组件的方法:<br>可以通过修改注册表,将此组件改名。<br>HKEY_CLASSES_ROOT\WScript.Shell\及HKEY_CLASSES_ROOT\WScript.Shell.1\<br>改名为其它的名字,如:改为WScript.Shell_ChangeName或WScript.Shell.1_ChangeName自己以后调用的时候使用这个就可以正常调用此组件了<br>也要将clsid值也改一下<br>HKEY_CLASSES_ROOT\WScript.Shell\CLSID\项目的值<br>HKEY_CLASSES_ROOT\WScript.Shell.1\CLSID\项目的值<br>也可以将其删除,来防止此类木马的危害。<br><br>防范Shell.Application组件的方法:<br>可以通过修改注册表,将此组件改名。<br>HKEY_CLASSES_ROOT\Shell.Application\<br>及<br>HKEY_CLASSES_ROOT\Shell.Application.1\<br>改名为其它的名字,如:改为Shell.Application_ChangeName或Shell.Application.1_ChangeName<br>自己以后调用的时候使用这个就可以正常调用此组件了。<br>也要将clsid值也改一下<br>HKEY_CLASSES_ROOT\Shell.Application\CLSID\项目的值<br>HKEY_CLASSES_ROOT\Shell.Application\CLSID\项目的值<br>也可以将其删除,来防止此类木马的危害。<br>附参考文《构建免受 Fso 威胁虚拟主机》<br>作者:稻香居士 <br><br> 现在绝大多数的虚拟主机都禁用了 ASP 的标准组件:FileSystemObject,因为这个组件为 ASP 提供了强大的文件系统访问能力,可以对服务器硬盘上的任何文件进行读、写、复制、删除、改名等操作(当然,这是指在使用默认设置的 Windows NT / 2000 下才能做到)。但是禁止此组件后,引起的后果就是所有利用这个组件的 ASP 将无法运行,无法满足客户的需求。 <br> 如何既允许 FileSystemObject 组件,又不影响服务器的安全性(即:不同虚拟主机用户之间不能使用该组件读写别人的文件)呢?这里介绍本人在实验中获得的一种方法,下文以 Windows 2000 Server 为例来说明。 <br> 在服务器上打开资源管理器,用鼠标右键点击各个硬盘分区或卷的盘符,在弹出菜单中选择“属性”,选择“安全”选项卡,此时就可以看到有哪些帐号可以访问这个分区(卷)及访问权限。默认安装后,出现的是“Everyone”具有完全控制的权限。点“添加”,将“Administrators”、“Backup Operators”、“Power Users”、“Users”等几个组添加进去,并给予“完全控制”或相应的权限,注意,不要给“Guests”组、“IUSR_机器名”这几个帐号任何权限。然后将“Everyone”组从列表中删除,这样,就只有授权的组和用户才能访问此硬盘分区了,而 ASP 执行时,是以“IUSR_机器名”的身份访问硬盘的,这里没给该用户帐号权限,ASP 也就不能读写硬盘上的文件了。 <br> 下面要做的就是给每个虚拟主机用户设置一个单独的用户帐号,然后再给每个帐号分配一个允许其完全控制的目录。 <br> 如下图所示,打开“计算机管理”→“本地用户和组”→“用户”,在右栏中点击鼠标右键,在弹出的菜单中选择“新用户”: <br> 在弹出的“新用户”对话框中根据实际需要输入“用户名”、“全名”、“描述”、“密码”、“确认密码”,并将“用户下次登录时须更改密码”前的对号去掉,选中“用户不能更改密码”和“密码永不过期”。本例是给第一虚拟主机的用户建立一个匿名访问 Internet 信息服务的内置帐号“IUSR_VHOST1”,即:所有客户端使用 http://xxx.xxx.xxxx/ 访问此虚拟主机时,都是以这个身份来访问的。输入完成后点“创建”即可。可以根据实际需要,创建多个用户,创建完毕后点“关闭”: <br> 现在新建立的用户已经出现在帐号列表中了,在列表中双击该帐号,以便进一步进行设置: <br> 在弹出的“IUSR_VHOST1”(即刚才创建的新帐号)属性对话框中点“隶属于”选项卡: <br> 刚建立的帐号默认是属于“Users”组,选中该组,点“删除”: <br> 现在出现的是如下图所示,此时再点“添加”: <br> 在弹出的“选择 组”对话框中找到“Guests”,点“添加”,此组就会出现在下方的文本框中,然后点“确定”: <br> 出现的就是如下图所示的内容,点“确定”关闭此对话框: <br> 打开“Internet 信息服务”,开始对虚拟主机进行设置,本例中的以对“第一虚拟主机”设置为例进行说明,右击该主机名,在弹出的菜单中选择“属性”: <br> 弹出一个“第一虚拟主机 属性”的对话框,从对话框中可以看到该虚拟主机用户的使用的是“F:\VHOST1”这个文件夹: <br> 暂时先不管刚才的“第一虚拟主机 属性”对话框,切换到“资源管理器”,找到“F:\VHOST1”这个文件夹,右击,选“属性”→“安全”选项卡,此时可以看到该文件夹的默认安全设置是“Everyone”完全控制(视不同情况显示的内容不完全一样),首先将最将下的“允许将来自父系的可继承权限传播给该对象”前面的对号去掉: <br> 此时会弹出如下图所示的“安全”警告,点“删除”: <br> 此时安全选项卡中的所有组和用户都将被清空(如果没有清空,请使用“删除”将其清空),然后点“添加”按钮。 <br> 将如图中所示的“Administrator”及在前面所创建的新帐号“IUSR_VHOST1”添加进来,将给予完全控制的权限,还可以根据实际需要添加其他组或用户,但一定不要将“Guests”组、“IUSR_机器名”这些匿名访问的帐号添加上去! <br> 再切换到前面打开的“第一虚拟主机 属性”的对话框,打开“目录安全性”选项卡,点匿名访问和验证控制的“编辑”: <br> 在弹出的“验证方法”对方框(如下图所示),点“编辑”: <br> 弹出了“匿名用户帐号”,默认的就是“IUSR_机器名”,点“浏览”: <br> 在“选择 用户”对话框中找到前面创建的新帐号“IUSR_VHOST1”,双击: <br> 此时匿名用户名就改过来了,在密码框中输入前面创建时,为该帐号设置的密码: <br> 再确定一遍密码: <br> OK,完成了,点确定关闭这些对话框。 <br> 经此设置后,“第一虚拟主机”的用户,使用 ASP 的 FileSystemObject 组件也只能访问自己的目
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
WISHnews.rar (28个子文件)
WISH简单个人文章系统
post.php 4KB
images
fish2.gif 424B
hana.gif 242B
gl-check1wc.gif 5KB
1.jpg 151KB
wdbcode.htm 11KB
2.jpg 128KB
search.gif 145B
一点说明.txt 340B
data
20050302111952.txt 9KB
20050301205811.txt 1KB
20050301205947.txt 7KB
20050302113420.txt 468B
20050301210121.txt 4KB
20050302113632.txt 621B
20050302113835.txt 6KB
20050302114024.txt 3KB
20050301210033.txt 3KB
20050302112212.txt 7KB
20050302111217.txt 4KB
20050302114535.txt 821B
源码之家.url 169B
index.php 5KB
vg.php 419B
show.php 7KB
del.php 2KB
mycodes.net说明.txt 2KB
wish.php 337B
共 28 条
- 1
资源评论
普通网友
- 粉丝: 882
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功