win2003vps安全篇
我不懂技术,所以过去忽略vps的安全,最后经常重做机子,很麻烦。之后从网上找了些策略,筛选了一些,做好vps模板,导入服务器,从那次之后很少在收到入侵了。内容不少,但是我都做了,现在一直没出过大问题。我把分享下我整理的策略,供大家参考。好 值得收藏感谢楼主分享
应版主反应我把他们放上来之前因为都是平时筛选出来自己用的 所以没整理过觉得很乱没放上来不过我照着做完的确被攻击概率就基本上降低很多了
1、废掉所有木马
原理:
木马危害,虽然手段繁多,但是万变不离其宗,其中必需的步骤是在你的系统里建立管理员用户。本文就是从这一环节入手,阻止木马建立用户。这样,即便你的电脑已经感染了木马病毒,但是由于不能建立用户,木马就不能发挥远程控制的功能。换句话说,就是废了它,让他变成废物。当然,废物明也需要清理,但这已经不在本文的讨论范围之内了。
3.方法:
运行 regedt32.exe 打开你的注册表,里面有一个目录树:
打开其中目录 HKEY_LOCAL_MACHINE
再打开其中目录 SAM
再打开其中目录 SAM
再打开其中目录 Domains
再打开其中目录 Account
再打开其中目录 Groups
好了,就是这个 Groups
就是负责建立用户的。删掉它,系统就不能建立用户了。无论木马怎样折腾,都无法建立用户,更谈不上提升为管理员了。这个目录里的文件如果被删除,是没有办法还原的。所以,在这个操作之前,你必须要进行备份,必要的时候,可以还原。
备份方法:右键点击 Groups 选择“导出”,给导出的文件起个名字,保存好,就可以了。
4.说明:
可能你进入注册表的时候,只能看到第一个 SAM
目录,其他的都看不到。别着急,那是因为你权限不够,右键点击相应目录选择“权限”,把你自己(通常是 Administrators
)设置为“允许完全控制”就可以了。设置完权限后关了,重进regedt32.exe ,以此类推,一直找到 Groups
目录为止。
========================================================
2、防止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 0
C、不支持IGMP协议
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters
新建DWORD值,名为IGMPLevel 值为0
===============================================================
7、更改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)改成一个莫名其妙的数字如258,起码让那些小菜鸟晕上半天,就此放弃入侵你也不一定哦
============================================
8. 删除默认共享
有人问过我一开机就共享所有盘,改回来以后,重启又变成了共享是怎么回事,这是2K为管理而设置的默认共享,HKEY_LOCAL_MACHINE\ SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters: AutoShareServer类型是REG_DWORD把值改为0即可
10.去掉默认共享,将以下文件存为reg后缀,然后执行导入即可.
Windows Registry Editor Version 5.00
"AutoShareServer"=dword:00000000
"AutoSharewks"=dword:00000000
=========================================
10、建立一个记事本,填上以下代码。保存为*.bat并加到启动项目中
net share c$ /del
net share d$ /del
net share e$ /del
net share f$ /del
net share ipc$ /del
net share admin$ /del
===========================================
7、卸载最不安全的组件
最简单的办法是直接卸载后删除相应的程序文件。将下面的代码保存为一个.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:\WINNT\WINDOWS\system32\shell32.dll
===========================================
然后运行一下,WScript.Shell, Shell.application, WScript.Network就会被卸载了。可能会提示无法删除文件,不用管它,重启一下服务器,你会发现这三个都提示“×安全”了。
2003服务器系统安全配置-中级安全配置
1.系统盘和站点放置盘必须设置为NTFS格式,方便设置权限.
2.系统盘和站点放置盘除administrators 和system的用户权限全部去除.
========================================================
7.配置帐户锁定策略(在运行中输入gpedit.msc回车,打开组策略编辑器,选择计算机配置-Windows设置-安全设置-账户策略-账户锁定策略,将账户设为“三次登陆无效”,“锁定时间30分钟”,“复位锁定计数设为30分钟”。)
====================================================
=======================================================
C:\WINDOWS\Registration 权限
7.禁止dump file的产生
dump文件在系统崩溃和蓝屏的时候是一份很有用的查找问题的资料。然而,它也能够给HK提供一些敏感
信息比如一些应用程序的密码等。控制面板>系统属性>高级>启动和故障恢复把 写入调试信息 改成无。
关闭华医生Dr.Watson
在开始-运行中输入“drwtsn32”,或者开始-程序-附件-系统工具-系统信息-工具-Dr Watson,调出系统
里的华医生Dr.Watson ,只保留“转储全部线程上下文”选项,否则一旦程序出错,硬盘会读很久,并占
用大量空间。如果以前有此情况,请查找user.dmp文件,删除后可节省几十MB空间。.
在命令行运行drwtsn32 -i 可以直接关闭华医生,普通用户没什么用处
====================================
13.卸载wscript.shell对象(强烈建议卸载.命令行执行组件.可以通过上传cmd.exe到网站目录下或直接调用服务器上的从而运行相关命令)
在cmd下运行:regsvr32 WSHom.Ocx /u
卸载FSO对象(不建议卸载.文件操作组件.一般虚拟主机服务提供商都开放着,禁用后一些asp程序不能正常运行)
在cmd下运行:regsvr32.exe scrrun.dll /u
==================================================================
2、本地安全策略设置
开始菜单—>管理工具—>本地安全策略
A、本地策略——>审核策略
审核策略更改 成功 失败
审核登录事件 成功 失败
审核对象访问 失败
审核过程跟踪 无审核
审核目录服务访问 失败
审核特权使用 失败
审核系统事件 成功 失败
审核账户登录事件 成功 失败
审核账户管理 成功 失败
B、本地策略——>用户权限分配
关闭系统:只有Administrators组、其它全部删除。
通过终端服务允许登陆:只加入Administrators,其他全部删除
9.在安全设置里 本地策略-安全选项通过终端服务拒绝登陆 加入
ASPNET
Guest
IUSR_*****
IWAM_*****
NETWORK SERVICE
SQLDebugger
(****表示你的机器名,具体查找可以点击 添加用户或组 选 高级 选 立即查找 在底下列出的用户列表里选择. 注意不要添加进user组和administrators组添加进去以后就没有办法远程登陆了.)
C、本地策略——>安全选项
交互式登陆:不显示上次的用户名 启用
网络访问:不允许SAM帐户和共享的匿名枚举 启用
网络访问:不允许为网络身份验证储存凭证 启用
网络访问:可匿名访问的共享 全部删除
网络访问:可匿名访问的命 全部删除
网络访问:可远程访问的注册表路径 全部删除
网络访问:可远程访问的注册表路径和子路径 全部删除
帐户:重命名来宾帐户 重命名一个帐户
帐户:重命名系统管理员帐户 重命名一个帐户
====================================================
11. 禁用不需要的和危险的服务,以下列出服务都需要禁用.
Alerter 发送管理警报和通知
TCP/IPNetBIOS Helper提供 TCP/IP 服务上的 NetBIOS 和网络上客户端的 NetBIOS 名称解析的支持而使用户能够共享
Server支持此计算机通过网络的文件、打印、和命名管道共享
Task scheduler 允许程序在指定时间运行
Computer Browser:维护网络计算机更新
Distributed File System: 局域网管理共享文件
Distributed linktracking client 用于局域网更新连接信息
Error reporting service 发送错误报告
Remote Procedure Call (RPC) Locator RpcNs*远程过程调用 (RPC)
Remote Registry 远程修改注册表
Removable storage 管理可移动媒体、驱动程序和库
Remote Desktop Help Session Manager 远程协助
Routing and Remote Access 在局域网以及广域网环境中为企业提供路由服务
Messenger 消息文件传输服务
Microsoft Serch:提供快速的单词搜索,建议禁用****不禁用移动*.msc文件后启动系统时会报错。禁用后没影响
Net Logon 域控制器通道管理
NTLMSecuritysupportprovide telnet服务和Microsoft Serch用的
PrintSpooler 打印服务
telnet telnet服务
Workstation 泄漏系统用户名列表
===============================================
C:\WINDOWS\Application Compatibility Scripts 不用做任何修改,包括其下所有子目录
C:\WINDOWS\AppPatch AcWebSvc.dll已经有users组权限,其它文件加上users组权限
C:\WINDOWS\Debug users组的默认不改
C:\WINDOWS\Debug\UserMode默认不修改有写入文件的权限,取消users组权限,给特别的权限,看演示
C:\WINDOWS\Debug\WPD不取消Authenticated Users组权限可以写入文件,创建目录.
C:\WINDOWS\Driver Cache取消users组权限,给i386文件夹下所有文件加上users组权限
C:\WINDOWS\Help取消users组权限
C:\WINDOWS\Help\iisHelp\common取消users组权限
C:\WINDOWS\IIS Temporary Compressed Files默认不修改
C:\WINDOWS\ime不用做任何修改,包括其下所有子目录
C:\WINDOWS\inf不用做任何修改,包括其下所有子目录
C:\WINDOWS\Installer 删除everyone组权限,给目录下的文件加上everyone组读取和运行的权限
C:\WINDOWS\java 取消users组权限,给子目录下的所有文件加上users组权限
C:\WINDOWS\MAGICSET 默认不变
C:\WINDOWS\Media 默认不变
C:\WINDOWS\Microsoft.NET不用做任何修改,包括其下所有子目录
C:\WINDOWS\msagent 取消users组权限,给子目录下的所有文件加上users组权限
C:\WINDOWS\msapps 不用做任何修改,包括其下所有子目录
C:\WINDOWS\mui取消users组权限
C:\WINDOWS\PCHEALTH 默认不改
C:\WINDOWS\PCHEALTH\ERRORREP\QHEADLES 取消everyone组的权限
C:\WINDOWS\PCHEALTH\ERRORREP\QSIGNOFF 取消everyone组的权限
C:\WINDOWS\PCHealth\UploadLB 删除everyone组的权限,其它下级目录不用管,没有user组和everyone组权限
C:\WINDOWS\PCHealth\HelpCtr 删除everyone组的权限,其它下级目录不用管,没有user组和everyone组权限(这个不用按照演示中的搜索那些文件了,不须添加users组权限就行)
C:\WINDOWS\PIF 默认不改
C:\WINDOWS\PolicyBackup默认不改,给子目录下的所有文件加上users组权限
C:\WINDOWS\Prefetch 默认不改
C:\WINDOWS\provisioning 默认不改,给子目录下的所有文件加上users组权限
C:\WINDOWS\pss默认不改,给子目录下的所有文件加上users组权限
C:\WINDOWS\RegisteredPackages默认不改,给子目录下的所有文件加上users组权限
C:\WINDOWS\Registration\CRMLog默认不改会有写入的权限,取消users组的权限
C:\WINDOWS\Registration取消everyone组权限.加NETWORK SERVICE 给子目录下的文件加everyone可读取的权限,
C:\WINDOWS\repair取消users组权限
C:\WINDOWS\Resources取消users组权限
C:\WINDOWS\security users组的默认不改,其下Database和logs目录默认不改.取消templates目录users组权限,给文件加上users组
C:\WINDOWS\ServicePackFiles 不用做任何修改,包括其下所有子目录
C:\WINDOWS\SoftwareDistribution不用做任何修改,包括其下所有子目录
C:\WINDOWS\srchasst 不用做任何修改,包括其下所有子目录
C:\WINDOWS\system 保持默认
C:\WINDOWS\TAPI取消users组权限,其下那个tsec.ini权限不要改
C:\WINDOWS\twain_32取消users组权限,给目录下的文件加users组权限
C:\WINDOWS\vnDrvBas 不用做任何修改,包括其下所有子目录
C:\WINDOWS\Web取消users组权限给其下的所有文件加上users组权限
C:\WINDOWS\WinSxS 取消users组权限,搜索*.tlb,*.policy,*.cat,*.manifest,*.dll,给这些文件加上everyone组和users权限
给目录加NETWORK SERVICE完全控制的权限
C:\WINDOWS\system32\wbem 这个目录有重要作用。如果不给users组权限,打开一些应用软件时会非常慢。并且事件查看器中有时会报出一堆错误。导致一些程序不能正常运行。但为了不让webshell有浏览系统所属目录的权限,给wbem目录下所有的*.dll文件users组和everyone组权限。
*.dll
users;everyone
我先暂停。你操作时挨个检查就行了
C:\WINDOWS\#$$#%^$^@!#$%$^S#@\#$#$%$#@@@$%!!WERa (我用的temp文件夹路径)temp由于必须给写入的权限,所以修改了默认路径和名称。防止webshell往此目录中写入。修改路径后要重启生效。
至此,系统盘任何一个目录是不可浏览的,唯一一个可写入的C:\WINDOWS\temp,又修改了默认路径和名称变成C:\WINDOWS\#$$#%^$^@!#$%$^S#@\#$#$%$#@@@$%!!WERa
这样配置应该相对安全了些。
================================================================================
system32根目录的设置:
此目录中基本上是删除user组和其它不必要的组后,其余组的权限保留就行了。要改的地方没几处
C:\WINDOWS\system32\GroupPolicy 删除Authenticated Users组,其下子目录保留默认不用改就行*******
C:\WINDOWS\system32\inetsrv 及其下子目录均保持不改就行*******
C:\WINDOWS\system32\spool*************
C:\WINDOWS\system32\spool\drivers 删除EVEryone组的权限
C:\WINDOWS\system32\spool\PRINTERS 删除EVEryone组的权限
C:\WINDOWS\system32\wbem\AutoRecover 删除EVEryone组的权限
C:\WINDOWS\system32\wbem\Logs 同上
C:\WINDOWS\system32\wbem\mof 同上
C:\WINDOWS\system32\wbem\Repository 同上
==================================================
1、磁盘权限
系统盘及所有磁盘只给 Administrators 组和 SYSTEM 的完全控制权限
系统盘\Documents and Settings 目录只给 Administrators 组和 SYSTEM 的完全控制权限
系统盘\Documents and Settings\All Users 目录只给 Administrators 组和 SYSTEM 的完全控制权限
系统盘\Windows\System32\cacls.exe、cmd.exe、net.exe、net1.exe、ftp.exe、 tftp.exe、telnet.exe 、 netstat.exe、regedit.exe、at.exe、attrib.exe、format.com、del文件只给 Administrators 组和SYSTEM 的完全 控制权限
另将<systemroot>\System32\cmd.exe、format.com、ftp.exe转移到其他目录或更名 cdd,foat,ftprr
Documents and Settings下所有些目录都设置只给adinistrators权限。并且要一个一个目录查看,包括下面的所有子目录。
删除c:\inetpub目录
13.更改有可能会被提权利用的文件运行权限,找到以下文件,将其安全设置里除administrators用户组全部删除,重要的是连system也不要留.("cacls.exe","arp.exe","attrib.exe","cmd.exe","format.com","ftp.exe","tftp.exe","net.exe","net1.exe","netstat.exe","ping.exe","regedit.exe","regsvr32.exe","telnet.exe","xcopy.exe","at.exe","del","c.exe")
net.exe
net1.exe
cmd.exe
tftp.exe
netstat.exe
regedit.exe
at.exe
attrib.exe
cacls.exe
format.com
c.exe 特殊文件 有可能在你的计算机上找不到此文件.
在搜索框里输入
"net.exe","net1.exe","cmd.exe","tftp.exe","netstat.exe","regedit.exe","at.exe","attrib.exe","cacls.exe","format.com","c.exe" 点击搜索 然后全选 右键 属性 安全
:)看一下下。。。。。。。。。。。
谢谢楼主分享,高手啊! 这些都需要做吗?还是做其中个别的就可以了呢?
页:
[1]