关于Windows Internet服务器安全配置
3.目录权限
将所有盘符的权限,全部改为只有
administrators组 全部权限 system 全部权限
将C盘的所有子目录和子文件,继承C盘的administrator(组或用户)和SYSTEM所有权限的两个权限,然后做如下修改:
C:\Program Files\Common Files 开放Everyone,默认的读取及运行,列出文件目录,读取三个权限。 C:\Windows\ 开放Everyone 默认的读取及运行,列出文件目录,读取三个权限。 C:\Windows\Temp 开放Everyone 修改,读取及运行,列出文件目录,读取,写入权限。
现在WebShell就无法在系统目录内写入文件了。当然也可以使用更严格的权限。在Windows下分别目录设置权限,可是比较复杂,效果也并不明显。
4.IIS
在IIS 6下,应用程序扩展内的文件类型对应ISAPI的类型已经去掉了IDQ、PRINT等等危险的脚本类型,在IIS 5下我们需要把除了ASP以及ASA以外所有类型删除。
安装URLSCAN
在[DenyExtensions]中,一般加入以下内容:
.cer .cdx .mdb .bat .cmd .com .htw .ida .idq .htr .idc .shtm .shtml .stm .printer
这样入侵者就无法下载.mdb数据库。这种方法比外面一些在文件头加入特殊字符的方法更加彻底,因为即便文件头加入特殊字符,还是可以通过编码构造出来的。
5.WEB目录权限
作为虚拟主机,会有许多独立客户。比较保险的做法就是为每个客户,建立一个Windows用户。然后在IIS的响应的站点项内,把IIS执行的匿名用户绑定成这个用户,并且把他指向的目录,权限变更为
administrators 全部权限 system 全部权限
单独建立的用户(或者IUSER) 选择高级->打开除“完全控制”,“遍历文件夹/运行程序”,“取得所有权”3个外的其他权限。
如果服务器上站点不多,并且有论坛。我们可以把每个论坛的上传目录,去掉此用户的执行权限,只有读写权限。这样入侵者即便绕过论坛文件类型检测上传了webshell,也是无法运行的。
6.MS SQL SERVER2000
使用系统帐户登陆查询分析器,运行以下脚本:
use master exec sp_dropextendedproc ''xp_cmdshell'' exec sp_dropextendedproc ''xp_dirtree'' exec sp_dropextendedproc ''xp_enumgroups'' exec sp_dropextendedproc ''xp_fixeddrives'' exec sp_dropextendedproc ''xp_loginconfig'' exec sp_dropextendedproc ''xp_enumerrorlogs'' exec sp_dropextendedproc ''xp_getfiledetails'' exec sp_dropextendedproc ''Sp_OACreate'' exec sp_dropextendedproc ''Sp_OADestroy'' exec sp_dropextendedproc ''Sp_OAGetErrorInfo'' exec sp_dropextendedproc ''Sp_OAGetProperty'' exec sp_dropextendedproc ''Sp_OAMethod'' exec sp_dropextendedproc ''Sp_OASetProperty'' exec sp_dropextendedproc ''Sp_OAStop'' exec sp_dropextendedproc ''Xp_regaddmultistring'' exec sp_dropextendedproc ''Xp_regdeletekey'' exec sp_dropextendedproc ''Xp_regdeletevalue'' exec sp_dropextendedproc ''Xp_regenumvalues'' exec sp_dropextendedproc ''Xp_regread'' exec sp_dropextendedproc ''Xp_regremovemultistring'' exec sp_dropextendedproc ''Xp_regwrite'' drop procedure sp_makewebtask go
删除所有危险的扩展。
7.修改CMD.EXE以及NET.EXE权限
将两个文件的权限修改到特定管理员才能访问,比如本例中,我们如下修改:
cmd.exe root用户 所有权限 net.exe root用户 所有权现
这样就能防止非法访问,还可以使用例子中提供的comlog程序。将com.exe改名_com.exe,然后替换com文件。这样可以记录所有执行的命令行指令。