金刀客服务器安全设置笔记

2010, January 11, 5:14 PM. 黑友网文
Submitted by admin

来源:http://bbs.daokers.com/read.php?tid=105

整篇文章思路:
     网站安全:服务器的安全首先来自于网站的安全,网站的安全的重点是数据库的安全。数据库防止下载已经有很多文章(参考http://www.daokers.cn/article.asp?id=438),一般方法有把数据库设置为加入没闭合asp代码的asp文件,IIS中取消数据库目录的读取权限。安装urlscan过滤非法字符防止被注入,限制危险文件类型的访问,限制危险方法的使用(参考http://www.daokers.cn/article.asp?id=440),来防止网站被直接植入Shell。如果找不到漏洞那么就从同服务器的网站下手进行旁注,这时需要给我们的网站建立独立用户,把权限限制在那个网站的文件夹内,防止修改别的网站的数据和提升权限。如果还是搞不定,那么就从服务器同网段下手,这时我们需要为服务器架设防火墙,防止arp欺骗http、ftp密码,ftp服务器使用加密协议传输,重点网站ftp启用ip限制登陆。
     如果网站因为漏洞或者注入,已经被植入了shell,可以设置虚拟目录防止数据库被下载导致更多信息的泄露,删除WSH和Shell组件防止被提权,设置独立匿名用户权限,限制重要文件如cmd.exe等权限。开启主防文件监控和应用程序监控,只允许数据库和上传目录的数据写入,其它所有文件限制添加,修改和删除,这样就使得所有从http页面只能上传文件到这2种目录,无法移动文件,而这2种目录不给予运行权限,堵死通道。
      系统安全:如果被添加了用户但是还没有加入administrator组,我们可以设置explorer.exe权限防止远程登陆,对各个分区设置严密的权限,每个盘去掉users组的权限,这样即使登陆了,也无法游览硬盘资料;如果获得了administrators权限,这是就只能靠HIPS来防护了,以管理员登陆了服务器也无法运行程序,给主动防御软件设置密码,禁止无规则程序的运行,登陆上传木马了也不让运行;开启防火墙,设置密码,木马被运行了也不给开启端口,禁止IE和explorer访问网络;开启应用程序监控,注册表监控,文件监控和网络监控,监视记录整个服务器的运行状况。安全在于人,而绝不仅仅在于安全软件。



1,    一台好的服务器到手后首先是给系统打全所有的补丁,推荐使用360safe漏洞修复,下载速度快,自动安装,自动屏蔽微软的黑屏补丁。这里是我从360安全卫士中剥离出来的绿色版(http://www.daokers.cn/article.asp?id=450)。
2,    网站设置:新建一个webusers用户组,为每一个网站建立独立用户,设置属于webusers组,选择“用户不能更改密码”和“密码永不过期”两个选项。

IIS中网站目录设置:
(一)在IIS网站根目录“属性”中:“主目录”-“配置”-“选项”-选择“启动父目录”
(二)在IIS网站根目录“属性”中:“主目录”-“配置”-“映射”-只保留需要的asp或者php等映射,其余的全部删除
(三)在IIS网站根目录“属性”中:“网站”-“高级“-“添加”-“主机头值“中输入网站域名
(四)在IIS网站根目录“属性”中:“文档”-添加index.asp,default.asp
(五)在IIS网站数据库目录“属性”中:“主目录”-对本地路径的目录全不选择,执行权限设置为“无”,数据库目录在这里可以设置一个花招那就是建立虚拟目录,这样可以避免数据库文件的泄露。比如我的网站的数据库相对路径为../test/test.asp,那么我可以在与wwwroot同一目录下建立一个目录xunidata,同时把数据库文件放在此文件夹中,建立虚拟目录test指向xunidata目录,给予xunidata目录的网站匿名用户读取和写入的权限,同时去掉上级目录的此匿名用户权限,这样的话除非能够猜到xunidata目录名,不然即使中了网马找到数据库也要费一番功夫。

(六)在IIS网站上传目录“属性”中:“主目录”-对本地路径的目录只选择“读取”,执行权限设置为“无”
(七)在IIS网站根目录“属性”中:“主目录”-对本地路径的目录只选择“读取”,执行权限设置为“纯脚本”
(八)在IIS网站根目录“属性”中:“目录安全性”-“身份验证与访问控制”-“启用匿名访问”,查找选择相应的用户,输入先前建立用户时设定的密码。

3,文件系统中网站目录安全设置:
网站根目录:在“安全”中添加相应独立用户,只给予“读取”权限

上传目录:可读取,可写入
数据库目录:可读取,可写入

4,    文件系统目录安全设置:
除给系统所在分区设置为不继承父权限外,其它分区都设置为继承父权限,并只赋予Administrators和System完全控制权。
(一)C:\Documents and Settings
C:\program files
以上目录只给予Administrators和System完全控制权。

(二)C:\windows
C:\WINDOWS\temp
C:\WINDOWS\system32\inetsrv
这些目录默认安全属性,temp目录需要写入权限,否则用到access的网站可能运行不了。
(三)C:\WINDOWS\system32\config
C:\WINDOWS\system32\LogFiles
C:\WINDOWS\system32\dllcache
C:\WINDOWS\system32\drivers
去掉这些目录users组的权限
(四)C:\WINDOWS\ServicePackFiles
删除此目录

5,    特殊文件安全属性
(一)C:\WINDOWS\regedit.exe
C:\WINDOWS\system32\net.exe
C:\WINDOWS\system32\net1.exe
C:\WINDOWS\system32\cmd.exe
C:\WINDOWS\system32\tftp.exe
C:\WINDOWS\system32\ftp.exe
C:\WINDOWS\system32\netstat.exe
C:\WINDOWS\system32\at.exe
C:\WINDOWS\system32\attrib.exe
C:\WINDOWS\system32\cacls.exe
C:\WINDOWS\system32\format.com
C:\WINDOWS\system32\wscript.exe
C:\WINDOWS\system32\shell.dll
C:\WINDOWS\system32\wshext.dll
C:\WINDOWS\system32\shell32.dll(Shell.Application)
C:\WINDOWS\system32\wshom.ocx(WScript.Shell, WScript.Network)
只给以上文件Administrator完全控制权,更彻底的是全部备份并替换成假文件。
(二)C:\WINDOWS\explorer.exe
去掉此文件的users组的权限,这样即使被添加用户但没有被加入administrators组的话,登陆后无权访问Explorer.exe马上注销。
(三)C:\WINDOWS\system32\inetsrv\metabase.xml(IIS配置文件)
只给Administrators和System完全控制权
6,    修改文件
(一)C:\WINDOWS\system32\ login.cmd:
在末尾添加
echo This is my home, you are not welcome! Bye.
Exit
(二)C:\WINDOWS\system32\inetsrv\metabase.xml:
修改网站文件上传和下载限制
ASPMaxRequestEntityAllowed(上传默认是200k即204800,建议20480000)
AspBufferingLimit(下载文件大小建议512000000)
7,    服务设置
自动服务项

禁用服务项

8,    组策略安全设置
(一)运行中输入“gpedit.msc“,计算机配置-windows设置-安全设置-本地策略-安全选项,
网络访问: 可匿名访问的共享:清空,COMCFG、DFS$
网络访问: 可匿名访问的命名管道:清空,COMNAP、COMNODE、SQL\QUERY、SPOOLSS、netlogon、lsarpc、samr、browser
网络访问: 可远程访问的注册表路径:清空
System\CurrentControlSet\Control\ProductOptions、System\CurrentControlSet\Control\Server Applications
Software\Microsoft\Windows NT\CurrentVersion
网络访问: 可远程访问的注册表路径和子路径:清空
System\CurrentControlSet\Control\Print\Printers
System\CurrentControlSet\Services\Eventlog
Software\Microsoft\OLAP Server
Software\Microsoft\Windows NT\CurrentVersion\Print
Software\Microsoft\Windows NT\CurrentVersion\Windows
System\CurrentControlSet\Control\ContentIndex
System\CurrentControlSet\Control\Terminal Server
System\CurrentControlSet\Control\Terminal Server\UserConfig
System\CurrentControlSet\Control\Terminal Server\DefaultUserConfiguration
Software\Microsoft\Windows NT\CurrentVersion\Perflib
System\CurrentControlSet\Services\SysmonLog
帐户: 重命名管理员帐户:重命名你的管理账号,建议用中文
帐户: 重命名来宾帐户:重命名一个中文名字,比如你丫找死啊,大爷地盘你快滚等

(二)计算机配置-windows设置-安全设置-本地策略-用户权限分配,
拒绝通过终端服务登录 加入
ASPNET
Guests
IUSR_*****
IWAM_*****
NETWORK SERVICE
(****表示你的机器名,不要添加进user组和administrators组,否则将无法远程登陆)
(三)计算机配置-windows设置-安全设置-本地策略-用户权限分配
审核策略更改        成功 失败
审核登录事件        成功 失败
审核对象访问        失败
审核目录服务访问    失败
审核权限使用        失败
审核系统事件        成功 失败
审核帐户登录事件    成功 失败
审核帐户管理      成功 失败
(四)计算机配置-windows设置-安全设置-账户策略-账户锁定策略
帐户锁定阈值   3
帐户锁定时间  30
复位帐户锁定计数器   30
(五)计算机配置-管理模板-系统
关闭自动播放  已启用   所有驱动器

9,    操作系统自带组件安全设置
当网站不需要使用一些组件时,可以删除系统自带的一些ASP组件,比如WSH和Shell就是比较危险的2个组件,FSO请慎重选择是否删除。
(一)    如果想让这2个组件失效,可以在注册表中删除或者修改以下项及相关classid值
WScript.Shell
WScript.Shell.1
WScript.Network
WScript. Network.1
Shell.application
Shell.application.1
在注册表中搜索“Shell.application”,所有的值就会出现在下面3个键值下
HKEY_CLASSES_ROOT\Shell.Application
HKEY_CLASSES_ROOT\Shell.Application.1
HKEY_CLASSES_ROOT\CLSID\{13709620-C279-11CE-A49E-444553540000}
(二)    如果想来个彻底,那就可以卸载删除组件对象,可以建立一个a.bat文件
regsvr32 /u %windir%\system32\wshom.ocx
regsvr32 /u %windir%\system32\shell32.dll
regsvr32 /u %windir%\system32\scrrun.dll
运行之, 重启,建一个b.bat
del %windir%\system32\shell32.dll
del %windir%\system32\wshom.ocx
del %windir%\system32\ scrrun.dll
运行之,即可彻底卸载删除WScript.Shell, WScript.Network,Shell.application和File System Object组件。
10,  Urlscan设置
对于非法字符的过滤,限制下载文件格式等,可以架设urlscan来增强IIS的安全性,详情可以参考我的这篇博文
http://www.daokers.cn/article.asp?id=440
11,Ftp设置
对于Serv-U 6.4.0.6FTP服务器,
第一,首先肯定是给软件加上强壮的密码。
第二,为防止被嗅探建议使用SSL加密协议来传输

第三,给重要的网站ftp加上IP过滤

别忘了,一定给你自己登陆的IP开启允许。
12,  端口设置
一般的端口限制是通过windows自带的防火墙和TCP/IP筛选来进行端口的设置,但是考虑到服务器一般还是需要一个防火墙来防护,那么这些完全可以在防火墙中来完成,这里推荐国产的风云防火墙,兼有自定义规则和主防功能的风云是一款不可多得免费产品。
开启80,3389,21或者990等端口

通行和限制一般应用程序

打开局域网ARP防护,防止嗅探

启动防火墙密码

13,监控设置
监控程序当然是具有文件监控,注册表监控,程序监控和网络监控的最好了,如果具有了网络监控那么防火墙也可以撤了。具备前3项监控的免费HIPS软件我推荐国产的非常优秀的EQ。安装好Eqsecure2008后可以去官方论坛下载一个服务器用的规则,然后结合自己的服务器情况,和网站的各个目录相结合,给予数据库和上传目录写入和修改的权限,其它目录限制一切权限。当然记得给EQ设置密码。


对于远程登陆管理的用户,风云防火墙和魔法盾存在这样一个严重的问题,那就是当你远程登陆操作完后会注销退出,这时候风云和EQ也会随之退出,那么你的电脑将得不到保护。解决这个问题的办法很简单,就是使风云的主程序以系统服务方式运行,这样注销后就可以继续保护服务器了。
第一个方法:使用Instsrv.exe和Srvany.exe来添加程序为系统服务,详情可以参考这篇文章,http://yes365.blog.hexun.com/17003434_d.html
第二个办法:使用刘湘源写的XYNTService.exe,这个程序可以非常简单的让你把程序加入到系统服务中。设置和下载可以看看下面2篇文章
http://www.codeproject.com/KB/system/xyntservice.aspx
http://blog.csdn.net/jackychu/archive/2008/10/08/3034157.aspx
大致流程是:安装风云,设置好防御规则,设置软件管理密码,去掉程序自启动,把XYNTService.exe的配置文件设置好,安装风云为服务,重启系统风云就在后台工作了,想停止风云就把它的服务改为手动,重启系统,风云就可以运行在前台了;安装EQ,设置好规则,设置管理密码,去掉程序的自启动,安装好XYNTService.exe,手动启动服务,EQ就在后台静静的工作了。如果在前台启动了EQ,注销前需要手动启动EQ服务,不然注销时EQ服务就自动停止了。


参考文献:
http://www.zhuye123.com/Article/179/180/2006/2006020326450.html
http://www.ajiang.net/products/aspcheck/safe.asp
http://server.zdnet.com.cn/server/2008/0827/1087352.shtml
http://www.57lz.com/jszl/08918104364251.html

« 上一篇 | 下一篇 »

Trackbacks
点击获得Trackback地址,Encode: UTF-8 点击获得Trackback地址,Encode: GB2312 or GBK 点击获得Trackback地址,Encode: BIG5
发表评论

评论内容 (必填):