- 积分
- 4871
注册时间2011-4-14
参与分
技术分
精华
TA的每日心情 | 开心 2020-7-28 11:30 |
---|
签到天数: 914 天 [LV.10]以坛为家III
|
8.禁用不必要的服务 开始-运行-services.msc
TCP/IPNetBIOS Helper提供 TCP/IP 服务上的 NetBIOS 和网络上客户端的 NetBIOS 名称解析的支持而使用户能够共享
文件、打印和登录到网络
Server支持此计算机通过网络的文件、打印、和命名管道共享
Computer Browser 维护网络上计算机的最新列表以及提供这个列表
Task scheduler 允许程序在指定时间运行
Messenger 传输客户端和服务器之间的 NET SEND 和 警报器服务消息
Distributed File System: 局域网管理共享文件,不需要可禁用
Distributed linktracking client:用于局域网更新连接信息,不需要可禁用
Error reporting service:禁止发送错误报告
Microsoft Serch:提供快速的单词搜索,建议禁用****不禁用移动*.msc文件后启动系统时会报错。禁用后没影响
NTLMSecuritysupportprovide:telnet服务和Microsoft Serch用的,不需要可禁用
PrintSpooler:如果没有打印机可禁用
Remote Registry:禁止远程修改注册表
Remote Desktop Help Session Manager:禁止远程协助
Workstation 关闭的话远程NET命令列不出用户组(关闭后启动时报错)
以上是在Windows Server 2003 系统上面默认启动的服务中禁用的,默认禁用的服务如没特别需要的话不要启动。
9.设置IP筛选,只开放你所要用到的端口,这样可以防止别人的木马程序连接,因为任何一个网络程序要和你服务器通信,都要通过端口。查看本机所开的端口是用netstat -na 命令,这儿我们开放了80 1989 21 1433(sqlserver),5631(pcanywhere)和ip6端口,这样设置后,一般的后门程序就无法连接到本机了,注意要重新启动了才有效果
附常用服务的各个端口:
IIS 80
FTP 21 启用后需要FTP客户端关闭PSAV才能连接
SMTP 25
POP3 110
MS SQL 1433
Mysql 3306
PcAnywhere 5631
Windows远程客户端 3389
10.修改相关注册表,个人感觉这样的效果不大。没去修改,仅供参考:
A、防止SYN洪水攻击
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
新建DWORD值,名为SynAttackProtect,值为2
新建EnablePMTUDiscovery REG_DWORD 0
新建NoNameReleaseOnDemand REG_DWORD 1
新建EnableDeadGWDetect REG_DWORD 0
新建KeepAliveTime REG_DWORD 300,000
新建PerformRouterDiscovery REG_DWORD 0
新建EnableICMPRedirects REG_DWORD 03. 禁止响应ICMP路由通告报文
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Interfaces\interface
新建DWORD值,名为PerformRouterDiscovery 值为0
B、防止ICMP重定向报文的攻击
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
将EnableICMPRedirects 值设为0
C、不支持IGMP协议
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
新建DWORD值,名为IGMPLevel 值为0
D、禁止IPC空连接:
cracker可以利用net use命令建立空连接,进而入侵,还有net view,nbtstat这些都是基于空连接的,禁止空连接就好了。
Local_Machine\System\CurrentControlSet\Control\LSA-RestrictAnonymous 把这个值改成”1”即可。
E、更改TTL值
cracker可以根据ping回的TTL值来大致判断你的操作系统,如:
TTL=107(WINNT);
TTL=108(win2000);
TTL=127或128(win9x);
TTL=240或241(linux);
TTL=252(solaris);
TTL=240(Irix);
实际上你可以自己改的:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters:DefaultTTL REG_DWORD 0-0xff(0-255 十进制,默认值128)改成一个莫名其妙的数字如250
11.把系统Administrator账号改名,我的已经改成17qupkcom。可以把硬盘的其它分区或重要目录设置成仅这个用户可以访问。这样即使入侵者把自己提升成了超级管理员组成员。也无法访问这些地方。 将Administrators组改名为其他,这样即使系统出现了溢出漏洞,但系统盘下的net.exe程序已被转移删除,想加入管理员组基本难以实现。何况Administrators组已被改名,用那个net localgroup administrators xxx /add,不知道管理员组的名字,会提示指定的本地组不存在。这样即使net命令可用也加不上了。呵呵。
最后给你的管理员帐户设定一个非常复杂的密码.
系统分区也可以设置成只有比如17qupkcom这个管理员访问,其它后来加入到Administrators组的超级管理员均无权限访问。让入侵者即使把自己加入到了Administrators组中,也是无权限做任何操作。
设置本地用户帐号,把管理员和来宾帐号重新命名,禁止不必用的帐号,最好还要建立一个管理员备用帐号,以防万一(提示:养成经常看一看本地用户帐号属性的习惯,以防后门帐号)
12.控制面板的设置:
修改*.cpl(控制面板文件)的权限为只有管理员可以访问
移动所有*.msc(管理控制台文件)到你的一个固定目录,并设置这个目录的访问权限(只有管理员可以防问,比如上面11中说的,把这个目录加上17qupkcom后,删除Administrators)这样就是别人进入你服务器也没办法操作,还有就是把net.exe改名或者移动,这个命令太强大了,移动net.exe一定要先删除c:\windows\system32\dllcache\net.exe
移动arp.exe;attrib.exe;cmd.exe;format.com;ftp.exe;net.exe;net1.exe;netstat.exe;ping.exe;regedit.exe;regsvr32.exe;telnet.exe;xcopy.exe;at.exe到一个固定的目录或修改权限,设置目录的访问权限(注意net1.exe与net同样作用),并删除c:\windows\system32\dllcache\中对应的文件名。搜索这些文件时注意选择其它高级选项,勾选搜索隐藏的文件和文件夹。
13.卸载最不安全的组件(建议不卸载。以上的设置好后,这项工作可以不作,删除组件后会导致一些程序运行不正常)
最简单的办法是直接卸载后删除相应的程序文件。将下面的代码保存为一个.BAT文件
regsvr32/u C:\WINDOWS\System32\wshom.ocx
del C:\WINDOWS\System32\wshom.ocx
regsvr32/u C:\WINDOWS\system32\shell32.dll
del C:\WINNT\WINDOWS\shell32.dll
然后运行一下,WScript.Shell, Shell.application, WScript.Network就会被卸载了。可能会提示无法删除文件,不用管它,重启一下服务器
14.IIS站点设置:
1、将IIS目录数据与系统磁盘分开,保存在专用磁盘空间内。
2、启用父级路径
3、在IIS管理器中删除必须之外的任何没有用到的映射(保留asp等必要映射即可)
4、在IIS中将HTTP404 Object Not Found出错页面通过URL重定向到一个定制HTM文件
5、Web站点权限设定(建议)
读 允许
写 不允许
脚本源访问 不允许
目录浏览 建议关闭
日志访问 建议关闭
索引资源 建议关闭
执行 推荐选择 “仅限于脚本”
经过以上的设置后,服务器基本上已经安全了。注意常更新系统安全补丁,关注一些最新漏洞的危害,并做相应的预防。好了,结束。 |
|