A5 安全小组Jack服务器安全讲座全记录
作者:jack 来源:站长网 时间:2009-02-20 18:13:00
大家好,我是A5安全小组 jack ,今天跟大家交流下 关于WEB服务器安全的相关问题。
其实,在服务器和网站的安全设置方面,我虽然有一些经验,但是还谈不上有研究,所以我今天做这个讲座的时候心里很不踏实,总害怕说错了会误了别人的事,有说错的地方还请大家指出,今天就全当互相讨论交流了。也许各位当中有安全高手或者破坏高手看了我所说的会嘲笑或者窃喜,但我想我的经验里毕竟还是存在很多正确的地方,有千千万万的比我知道的更少的人还是需要有人来提供这些经验和信息的。呵呵
现在几乎有一部分的站长都拥有自己的服务器,一部分的人还使用虚拟主机或合租服务器。对于现在在使用虚拟主机和合租的部分站长来说 可能在服务器安全方面考虑的比较少,因为有IDC过硬的技术在支撑,只要对自己的使用的网站程序相对多了解一些,多关注下程序官方发布的新闻和漏洞补丁提示,及时的升级程序打上最新漏洞补丁就已经有80%的安全性了,官方补丁是免费发布给我们的东西,如果连程序漏洞补丁都不能及时打上,那么这个网站被黑的可能性几乎在80%以上,所以说程序补丁务必要及时打上。其次就是虚拟主机管理帐号密码和FTP帐号密码、后台登陆路径地址和管理员帐号密码的设置,这个可能很多人有时候容易忽略,但是由于疏忽大意设置的密码过于简单或没有更改默认的帐号密码、后台路径而造成网站被黑的还是有一小部分站长。现在有很多傻瓜式的黑客工具,随便一个懂点计算机技术的人就能上手,对于一些FTP帐号密码和网站后台密码简单的网站可以批量获取到帐号密码,直接登陆FTP或后台拿到WEBSHELL ,所以说一般在拿到FTP帐号密码后要及时的修改尽量越复杂越好。网站在安装完毕后及时的删除安装文件修改后台路径和后台登陆帐号密码是务必要做的,不要嫌麻烦,也许你的小小的操作就会给你网站带来很大的安全保障,疏忽大意,侥幸心理只会给网站带来很大的安全隐患,因为一个入侵找的就是你被忽略的死角钻你不注意的漏洞。
好了 对于使用虚拟主机的网站安全我暂时先说这么多,我们下面重点说一下独立WEB服务器的安全设置。
最近遇到好几位站长找我求助,看了下情况都是差不多,都是因为前期只顾着弄网站,对服务器安全方面的意识和技术防范不够 所以导致整个服务器都被黑客控制,服务器上的所有网站都被挂马,都是好几万流量的网站,这个后果很严重。在服务器配置网站和环境的时候没有把安全性考虑进去,只是为了能让自己的网站能正常访问,所以整个服务器的权限几乎都是Everyone 权限在运作。这样的服务器能不被黑纯属意外。下面我们就针对目前主流的服务器系统WIN2003 给大家提一些相关安全配置和防范方面的信息,希望对各位有所帮助。我直接分几大块写出来 。
一、操作系统配置
1.安装操作系统(NTFS分区)后,装杀毒软件,我选用的是卡巴。
2.安装系统补丁。(微软发布的每个补丁务必要打上,因为很多木马都是针对具体的漏洞才可以执行的)扫描漏洞全面杀毒
3.删除Windows Server 2003默认共享
首先编写如下内容的批处理文件:
@echo off
net share C$ /del
net share D$ /del
net share E$ /del
net share F$ /del
net share admin$ /del
文件名为delshare.bat,放到启动项中,每次开机时会自动删除共享。
4.禁用IPC连接
打开CMD后输入如下命令即可进行连接:net use\\ip\ipc$ "password" /user:"usernqme"。我们可以通过修改注册表来禁用IPC连接。打开注册表编辑器。找到如下组建HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Lsa中的restrictanonymous子键,将其值改为1即可禁用IPC连接。
5.删除"网络连接"里的协议和服务
在"网络连接"里,把不需要的协议和服务都删掉,这里只安装了基本的Internet协议(TCP/IP),同时在高级tcp/ip设置里--"NetBIOS"设置"禁用tcp/IP上的NetBIOS(S)"。
6.启用windows连接防火墙,只开放web服务(80端口)。
注:在2003系统里,不推荐用TCP/IP筛选里的端口过滤功能,譬如在使用FTP服务器的时候,如果仅仅只开放21端口,由于FTP协议的特殊性,在进行FTP传输的时候,由于FTP 特有的Port模式和Passive模式,在进行数据传输的时候,需要动态的打开高端口,所以在使用TCP/IP过滤的情况下,经常会出现连接上后无法列出目录和数据传输的问题。所以在2003系统上增加的windows连接防火墙能很好的解决这个问题,所以都不推荐使用网卡的TCP/IP过滤功能。
7.磁盘权限
系统盘只给 Administrators 和 SYSTEM 权限
系统盘\Documents and Settings 目录只给 Administrators 和 SYSTEM 权限;
系统盘\Documents and Settings\All Users 目录只给 Administrators 和 SYSTEM 权限;
系统盘\Documents and Settings\All Users\Application Data目录只给 Administrators 和 SYSTEM 权限;
系统盘\Windows 目录只给 Administrators 、 SYSTEM 和 users 权限;( users默认的就可以)
系统盘\Windows\System32\目录下的:net.exe;net1.exe;cmd.exe;command.exeftp.exe;netstat.exe;regedit.exe;at.exe;attrib.exe;cacls.exe 文件只给 Administrators 权限(如果觉得没用就删了它,比如我删了cmd.exe,command.exe,嘿嘿。);
其它盘,有安装程序运行的(我的sql server 2000 在D盘)给 Administrators 和 SYSTEM 权限,无只给 Administrators 权限。
8.本地安全策略设置
开始菜单—>管理工具—>本地安全策略
A、本地策略——>审核策略 (可选用)
审核策略更改 成功 失败
审核登录事件 成功 失败
审核对象访问 失败
审核过程跟踪 无审核
审核目录服务访问 失败
审核特权使用 失败
审核系统事件 成功 失败
审核账户登录事件 成功 失败
审核账户管理 成功 失败
B、本地策略——>用户权限分配
关闭系统:只有Administrators组、其它全部删除。
通过终端服务拒绝登陆:加入Guests、Users组
通过终端服务允许登陆:只加入Administrators组,其他全部删除
C、本地策略——>安全选项
交互式登陆:不显示上次的用户名 启用
网络访问:可匿名访问的共享 全部删除
网络访问:可匿名访问的命名管道 全部删除
网络访问:可远程访问的注册表路径 全部删除
网络访问:可远程访问的注册表路径和子路径 全部删除
网络访问:不允许SAM帐户和共享的匿名枚举 启用
网络访问:不允许为网络身份验证储存凭据或.Net passports
帐户:重命名来宾帐户 重命名一个帐户
(下面一项更改可能导致sqlserver不能使用)
帐户:重命名系统管理员帐户 重命名一个帐户
9.关闭不必要的危险服务项目。
右键我的电脑—>管理—>服务和应用程序—>服务
找到 Server 双击 选择启动类型——>禁用——>服务状态——>关闭
找到 TCP/IP NetBIOS Helper 双击 选择启动类型——>禁用——>服务状态——>关闭
找到 Workstation 双击 选择启动类型——>禁用——>服务状态——>关闭
10.开启默认防火墙
开启默认防火墙 将常用的端口 80 1433 3306 21 3389 等端口还有你经常使用的特殊端口添加进去 点确定。
11.更改默认的3389远程端口
现在有很多小工具直接可以修改的。但是也可以直接在注册表自己修改(这个要慎重,如果修改错就掉远程了)
第一:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal
Server\Wds\rdpwd\Tds\tcp]
PortNumber值,默认是3389,修改为自定义的端口,如6553
第二:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal
Server\WinStations\RDP-Tcp]
PortNumber值,默认是3389,修改为自定义的端口, 如6553
注意:这两处的修改端口都必须一致才行。