签到天数: 820 天 连续签到: 1 天 [LV.10]以坛为家III
|
楼主 |
发表于 2009-6-5 10:25
|
显示全部楼层
变态的Web服务器IIS安全设置
一.删除默认共享.关闭139.445端口
选择 “ 计算机管理 ” 程序,选择 “ 共享文件夹 ” ,在相应的共享文件夹上按右键,选择 “ 停止 ” 共享即可。不过在系统重新启动后, IPC$ 和 printer$ 会再次共享。
IPC$ 和 printer$工作的端口是139和445.咱们来手工关闭.
关闭445端口的方法:
(445端口是文件共享.打印机共享通讯端口.默认是开放的.)
修改注册表,添加一个键值
Hive: HKEY_LOCAL_MACHINE\\System\\CurrentControlSet\\Services\\NetBT\\Parameters
添加DWORD值:SMBDeviceEnabled
右键单击“SMBDeviceEnabled”值,选择“修改”
在出现的“编辑DWORD值”对话框中,在“数值数据”下,输入“0”,
单击“确定”按钮,完成设置。从启电脑.即可关闭445端口
关闭139端口的方法:
(139端口开启都是由于NetBIOS这个网络协议在使用它,Netbios网络基本输入输出系统。是1983年IBM开发的一套网络标准,微软在这基础上继续开发。微软的客户机/服务器网络系统都是基于NetBIOS的。在构建的网络系统中,对每一台主机的唯一标识信息是它的NetBIOS名。系统可以利用WINS服务、广播及Lmhost文件等多种模式将NetBIOS名解析为相应IP地址,从而实现信息通讯。在这样的网络系统内部,利用NetBIOS名实现信息通讯是非常方便、快捷的。但是在Internet上,它就和一个后门程序差不多了。不少骇客就是通过这个漏洞入侵计算机的!)
控制面板-网络-本地链接-属性(这里勾选取消\"网络文件和打印机共享\")-tcp/ip协议属性-高级-WINS-Netbios设置-禁用Netbios
即可关闭139端口
二.设置目录权限
WINDOWS用户,在WIN2003系统中大多数时候把权限按用户(組)来划分。
在【开始→程序→管理工具→计算机管理→本地用户和组】管理系统用户和用户组
NTFS安全权限设置是很强大的,(请记住分区的时候把所有的硬盘都分为NTFS分区)
然后我们可以确定每个分区对每个用户开放的权限。
【文件(夹)上右键→属性→安全】在这里管理NTFS文件(夹)权限。
IIS匿名用户,每个IIS站点或者虚拟目录,都可以设置一个匿名访问用户(现在暂且把它叫“IIS匿名用户”),
当用户访问你的网站的.ASP文件的时候,这个.ASP文件所具有的权限,就是这个“IIS匿名用户”所具有的权限。
权限设置的思路要为每个独立的要保护的个体(比如一个网站或者一个虚拟目录)创建一个系统用户,
让这个站点在系统中具有惟一的可以设置权限的身份。
设置所有的分区禁止这个用户访问,
而刚才这个站点的主目录对应的那个文件夹设置允许这个用户访问(要去掉继承父权限,并且要加上超管组和SYSTEM组)。
这样设置了之后,这个站点里的ASP程序就只有当前这个文件夹的权限了。
具体设置
c盘保留administrators和system用户并给于完全权限之外.其他用户全部删除
C:\\Program Files\\Common Files这个文件夹给于everyone读取权限 C:\\Documents and Settings\\All Users 这个文件夹从新删除一次.只保留administrators和system用户并给于完全权限 c:\\windows文件夹给于administrators和system用户完全权限和Users用户组读取运行权限其他分区全部保留administrators和system用户并给于完全权限之外.别的用户全部删除 而每个网站则单独建立一个用户.添加到Guests用户组右击“我的电脑”—管理—“本地用户组”—“用户”新建用户,比如创建“dongwang”密码:dongwang 然后右击“dongwang“用户—属性---选择”隶属于“选项卡----将默认归属于”users“组删除,添加Guests组(来宾组)---确定 然后再选择“远程控制“选项卡,将”启用远程控制“取消—确定
***待补充*** 三.删除不必要的组件.关掉不必要的服务
其实,只要做好了上面的权限设置,那么FSO、XML、strem都不再是不安全组件了,因为他们都没有跨出自己的文件夹或者站
点的权限。
最危险的组件是WSH和Shell,因为它可以运行你硬盘里的EXE等程序,比如它可以运行提升程序来提升SERV-U权限甚至用SERVU
来运行更高权限的系统程序。(这里建议不要用SERV-U这种流行软件.FTP服务器软件这里推荐使用Gene6.功能方面比SERV-U有
过而无不及.)
FSO和XML是非常常用的组件之一,很多程序会用到他们。WSH组件会被一部分主机管理程序用到,也有的打包程序也会用到
手工删除WSH和Shell组件的方法.
------------->下边为参考资料:
最简单的办法是直接卸载后删除相应的程序文件。将下面的代码保存为一个.BAT文件,( 以下均以 WIN2000 为例,如果使用
2003,则系统文件夹应该是 C:\\WINDOWS\\ )
regsvr32/u C:\\WINDOWS\\System32\\wshom.ocx
del C:\\WINDOWS\\System32\\wshom.ocx
regsvr32/u C:\\WINDOWS\\system32\\shell32.dll
del C:\\WINDOWS\\system32\\shell32.dll
然后运行一下,WScript.Shell, Shell.application, WScript.Network就会被卸载了。可能会提示无法删除文件,不用管它
,重启一下服务器,你会发现这三个都提示“×安全”了。
改名不安全组件
需要注意的是组件的名称和Clsid都要改,并且要改彻底了。下面以Shell.application为例来介绍方法。
打开注册表编辑器【开始→运行→regedit回车】,然后【编辑→查找→填写Shell.application→查找下一个】,用这个方法
能找到两个注册表项:“{13709620-C279-11CE-A49E-444553540000}”和“Shell.application”。为了确保万无一失,把这
两个注册表项导出来,保存为 .reg 文件。
比如我们想做这样的更改
13709620-C279-11CE-A49E-444553540000 改名为 13709620-C279-11CE-A49E-444553540001
Shell.application 改名为 Shell.application_ajiang
那么,就把刚才导出的.reg文件里的内容按上面的对应关系替换掉,然后把修改好的.reg文件导入到注册表中(双击即可),
导入了改名后的注册表项之后,别忘记了删除原有的那两个项目。这里需要注意一点,Clsid中只能是十个数字和ABCDEF六个
字母。
下面是我修改后的代码(两个文件我合到一起了):
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\\CLSID\\{13709620-C279-11CE-A49E-444553540001}]
@=\"Shell Automation Service\"
[HKEY_CLASSES_ROOT\\CLSID\\{13709620-C279-11CE-A49E-444553540001}\\InProcServer32]
@=\"C:\\\\WINNT\\\\system32\\\\shell32.dll\"
\"ThreadingModel\"=\"Apartment\"
[HKEY_CLASSES_ROOT\\CLSID\\{13709620-C279-11CE-A49E-444553540001}\\ProgID]
@=\"Shell.Application_ajiang.1\"
[HKEY_CLASSES_ROOT\\CLSID\\{13709620-C279-11CE-A49E-444553540001}\\TypeLib]
@=\"{50a7e9b0-70ef-11d1-b75a-00a0c90564fe}\"
[HKEY_CLASSES_ROOT\\CLSID\\{13709620-C279-11CE-A49E-444553540001}\\Version]
@=\"1.1\"
[HKEY_CLASSES_ROOT\\CLSID\\{13709620-C279-11CE-A49E-444553540001}\\VersionIndependentProgID]
@=\"Shell.Application_ajiang\"
[HKEY_CLASSES_ROOT\\Shell.Application_ajiang]
@=\"Shell Automation Service\"
[HKEY_CLASSES_ROOT\\Shell.Application_ajiang\\CLSID]
@=\"{13709620-C279-11CE-A49E-444553540001}\"
[HKEY_CLASSES_ROOT\\Shell.Application_ajiang\\CurVer]
@=\"Shell.Application_ajiang.1\"
你可以把这个保存为一个.reg文件运行试一下,但是可别就此了事,因为万一黑客也看了我的这篇文章,他会试验我改出来的
这个名字的。
防止列出用户组和系统进程
利用getobject(\"WINNT\")获得了系统用户和系统进程的列表,这个列表可能会被黑客利用,我们应当隐藏起来,方法是:
【开始→程序→管理工具→服务】,找到Workstation,停止它,禁用它。
***待补充***
四.升级补丁update
点击开始→Windows Update,安装所有的关键更新
在桌面→我的电脑上点击右键→选择属性→自动更新→选择自动(推荐)
五.装杀毒软件推荐McAfee像卡巴、瑞星、江民等,这些都是民用的杀软,推荐大家使用服务器专用杀软
六.安装网络防火墙推荐冰盾网络防火墙需要的可以PM我!
七.防止下载数据库在IIS数据库文件上点击右键.设置重定向到url可以有效防止别人下载你的数据库 或者将数据库文件重命名 如果将数据库重命名,需要注意的一点是,你需要动手修改配置文件,将重名的数据库名复制,打开配置文件,替换原来的数据库!否则打不开网页,出现数据库连接错误! |
|