四、数据及备份管理
1.备份
1)要经常把重要数据备份到专用的备份服务器,备份完毕后,可将备份服务器与网络隔离。 可采用自动的备份工具进行,要求支持FTP方式备份。
2)使用系统的备份功能对安装好的系统进行阶段性备份。
3)使用WonRescue等工具对注册表进行阶段性备份。
4)使用Ghost对全面配置完毕的系统分区进行映像备份,并存放到隐藏的分区中。
2.设置文件共享权限
1)限制共享权限
设置共享文件时,要注意把共享文件的权限从“everyone”组改成“授权用户”,包括打印共享。
2)关闭默认共享
Win 2000安装好以后,系统会创建一些隐藏的共享,在cmd下可用net share命令查看它们。要禁止这
些共享。操作方法是:打开“管理工具→计算机管理→共享文件夹→共享”,在相应的共享文件夹上按右
键,点“停止共享”即可。不当过机器重新启动后,这些共享又会重新开启。
3.防止文件名欺骗
设置以下选项可防止文件名欺骗,如防止以.txt或.exe为后缀的恶意文件被显示为.txt文件,从而使
人大意打开该文件: 双击“我的电脑→工具→文件夹选项→查看”,选择“显示所有文件和文件夹”属性
设置,去掉“隐藏已知文件类型扩展名”属性设置。
4.Access数据库的安全概要
1)新生成的数据库在保证干净的前提下,主动在尾部合并一行ASP代码,内容一般可以为重定向,以免别人通过论坛发帖等方式嵌入有害代码后被得到执行;
2)对MDB文件创建一个无效的映射,以便在IE中下载时出错;
3)修改出错页面,建议将出错页面设计为正常被曝库后的内容,但给一个数据库的虚假地址(最好存在相应的虚假数据库文件,比如一个改名后的病毒等);
4)在防火墙中对MDB类型的扩展名进行过滤;
5)删除或禁用网站的后台数据库备份功能,而用本地安装的专门自动备份程序进行自动增量备份。
6)ASP 通用防止注入的程序:
功能简单说明:
1.自动获取页面所有参数,无需手工定义参数名.
2.提供三种错误处理方式供选择.
(1).提示信息.
(2).转向页面.
(3).提示信息,再转向页面.
3.自定义转向页面.
使用方法很简单,只需要在ASP页面头部插入代码
Code:
包含 Fy_SqlX.Asp 就可以了~~简单实用
7)使用ODBC数据源。
在ASP程序设计中,如果有条件,应尽量使用ODBC数据源,不要把数据库名写在程序中,否则,数据库名将随ASP源代码的失密而一同失密,例如:
DBPath = Server.MapPath(“./akkt/kj61/acd/av5/faq9jl.mdb ”)
conn.open “driver={ Microsoft Access Driver (*.mdb) };dbq=”& DBPath
可见,即使数据库名字起得再怪异,隐藏的目录再深,ASP源代码失密后,也很容易被下载下来。如果使用ODBC数据源,就不会存在这样的问题了:
conn.open “ODBC-DSN名”
5.MSSQL 注入攻击的防范
在SQL Server 2000的安装目录下的NSSQLBINN文件夹中有一个危险的DLL组件,就是Xplog70.dll,建议将它改名或者彻底删除!
攻击者可调用SQL里的Master里的扩展存储过程中的xp_cmdshell来执行系统指令。
1)删除扩展存储过程
在控制面板→计算机管理→Microsoft SQL Server→(Local……)→数据库→master→扩展存储过程→xp_cmdshell,右击然后删除!
也可以使用命令删除:
sp_dropextendedproc 'xp_cmdshell'
接着在系统分区搜索并删除或改名、移除 xplog70.dll 文件防止恶意者恢复上述配置。
2)删除注册表操作功能
删除上述位置下的:
xp_regaddmultistring(向注册表添加项目)
xp_regdeletekey(向注册表删除一个项)
xp_regdeletevalue(向注册表删除一个键值)
xp_regnumvalues(列举主键下的键值)
xp_regread(读取一主键下的键值)
xp_regremovemultistring(从注册表中删除项目)
xp_regwrite(向注册表中数据)
3)防范跨库查询
每个数据库分别设置一个数据库用户,该用户只能对其拥有的数据库进行查询,禁止其他数据库(包括4个系统数据库Master Model Tempdb Msdb和两个用户数据库 Pubs t Northwind)。
如果网站使用了别人的现成代码,则必须使用文本批量替换工具搜索“POWERED BY……”之类的版权特征信息,并进行替换,以免源代码存在漏洞时,别人可以通过搜索引擎快速找到你的网站,从而减少被随意入侵的机率。
6. MSSQL Server 的基本安全策略
这些步骤是针对任何SQL Server安装的部分标准安全“最佳策略”。
首先,打上SQL SERVER最新的安全补丁,现在补丁已经出到了SP3。下载地址:http://www.juexiang.com/sql/downloads/2000/sp3.asp。如果这一步都没有做好,那我们也没有继续下去的必要了。
1. 确保你的SA登录帐号的密码非空。只有你的SA登录帐号没有安全保障的时候蠕虫才会工作。
因此,你应该遵循在SQL Server
联机文档中“系统管理员(SA)登录”主题中的推荐模式,确保固有的SA帐号具有一个强壮的密码,
即使是你自己从不使用SA帐号。
2. 在你的互联网网关或防火墙上屏蔽1433端口和/或指定SQL Server监听一个可选的端口。
3. 假如在你的互联网网关上需要利用1433端口,启动用于防止此端口滥用的流入/流出过滤。
4. 将SQLServer和SQL Server客户端运行在微软的Windows NT帐号下,而不是localsystem。
5. 启动Windows NT验证,启动监听成功和失败的登录,然后停止并重启MSSQLServer服务。设置你的客户端使用NT验证。
6. 改默认的1433端口,并且将SQL SERVER隐藏。这样能禁止对试图枚举网络上现有的 SQL Server 客户端所发出的广播作出响应。另外,还需要在TCP/IP筛选中将1433端口屏蔽掉,尽可能的隐藏你的SQL SERVER数据库。这样子一但让攻击创建了SQL SERVER的账号,也不能马上使用查询分析器远程登陆来进行下一步的攻击。单从ASP,PHP等页面构造恶意语句的话,还有需要查看返回值的问题,总比不上直接查询分析器来得利落。所以我们首先要做到即使让别人注入了,也不能让攻击者下一步做得顺当。修改方法:企业管理器 --> 你的数据库组 --> 属性 --> 常规 --> 网络配置 --> TCP/IP --> 属性,在这儿将你的默认端口进行修改,和SQL SERVER的隐藏。
7.合理创建角色
SQL INJECTION往往在WEB CODE中产生。而做为系统管理员或者数据库管理员,总不能常常的去看每一段代码。即使常常看代码,也不能保证我们在上面的疏忽。那怎么办?我们就要从数据库角色着手,让数据库用户的权限划分到最低点。SQL SERVER的默认权限让人真的很头疼,权限大得非常的高,权限小的又什么都做不了,SYSADMIN和db_owner真是让人又爱又恨。攻击者一但确认了网站存在SQL INJECTION漏洞,肯定有一步操作步骤就是测试网站的SQL SERVER使用者具有多大的权限。一般都会借助Select IS_SRVROLEMEMBER('sysadmin'),或者Select IS_MEMBER('db_owner'),再或者用user = 0(让字符和数字进行比较,SQL SERVER就会提示了错误信息,从该信息中即可知道一些敏感信息)等语句进行测试。方法还有,我也不敢多说了。其一怕错,其二怕联盟中的人扁。在当前,如果网站的数据库使用者用的是SA权限,再加上确认了WEB所处在的绝对路径,那么就宣告了你的网站的OVER。db_owner权限也一样,如果确认了绝对路径,那么有50%的机会能给你的机器中上WEB 方式的木马,如海阳等。所以这儿我们确认了一点,我们必须要创建自已的权限,让攻击者找不着下嘴的地方。在这儿引用一个SQL SERVER联机帮助中的例子:
创建 SQL Server 数据库角色的方法(企业管理器)
创建 SQL Server 数据库角色
1. 展开服务器组,然后展开服务器。
2. 展开"数据库"文件夹,然后展开要在其中创建角色的数据库。
3. 右击"角色",然后单击"新建数据库角色"命令。
4. 在"名称"框中输入新角色的名称。
5. 单击"添加"将成员添加到"标准角色"列表中,然后单击要添加的一个或多个用户。(可选)
只有选定数据库中的用户才能被添加到角色中。
8. 合理的权限配置
对象权限
处理数据或执行过程时需要称为对象权限的权限类别:
· Select、Insert、Update 和 Delete 语句权限,它们可以应用到整个表或视图中。
· Select 和 Update 语句权限,它们可以有选择性地应用到表或视图中的单个列上。
· Select 权限,它们可以应用到用户定义函数。
· Insert 和 Delete 语句权限,它们会影响整行,因此只可以应用到表或视图中,而不能应用到单个列上。
· EXECUTE 语句权限,它们可以影响存储过程和函数。
语句权限
创建数据库或数据库中的项(如表或存储过程)所涉及的活动要求另一类称为语句权限的权限。例如,如果用户必须能够在数据库中创建表,则应该向该用户授予 Create TABLE 语句权限。语句权限(如 Create DATABASE)适用于语句自身,而不适用于数据库中定义的特定对象。
语句权限有:
· BACKUP DATABASE
· BACKUP LOG
· Create DATABASE
· Create DEFAULT
· Create FUNCTION
· Create PROCEDURE
· Create RULE
· Create TABLE
· Create VIEW
暗示性权限
暗示性权限控制那些只能由预定义系统角色的成员或数据库对象所有者执行的活动。例如,sysadmin 固定服务器角色成员自动继承在 SQL Server 安装中进行操作或查看的全部权限。
数据库对象所有者还有暗示性权限,可以对所拥有的对象执行一切活动。例如,拥有表的用户可以查看、添加或删除数据,更改表定义,或控制允许其他用户对表进行操作的权限。
db_owner 在数据库中有全部权限。
db_accessadmin 可以添加或删除用户 ID。
db_securityadmin 可以管理全部权限、对象所有权、角色和角色成员资格。
db_ddladmin 可以发出 ALL DDL,但不能发出 GRANT、REVOKE 或 DENY 语句。
db_backupoperator 可以发出 DBCC、CHECKPOINT 和 BACKUP 语句。
db_datareader 可以选择数据库内任何用户表中的所有数据。
db_datawriter 可以更改数据库内任何用户表中的所有数据。
db_denydatareader 不能选择数据库内任何用户表中的任何数据。
db_denydatawriter 不能更改数据库内任何用户表中的任何数据。
在这儿把新建的数据库角色的权限配置好,比如需要使用哪个表、视图、存储过程等。然后把Db_owner和db_securityadmin、 db_backupoperator取消,不给攻击者BACKUP DATABASE和Create TABLE的机会,一但攻击者具有这两个权限,那么你的网站就还处在十分危险的状态。还有注意一下,在创建数据库账号时,千万不能对服务器角色进行选择。
9. 修改SQL SERVER内置存储过程。SQL SERVER估计是为了安装或者其它方面,它内置了一批危险的存储过程。能读到注册表信息,能写入注册表信息,能读磁盘共享信息等等……各位看到这儿,心里可能会在想,我的网站中有其它的代码,又不像查询分析器那样能查接将结果输出。给你这个权限,又不能怎么样,还是看不到信息。如果各位这样想就大错特错了。提示一下,如果攻击者有Create TABLE的权限,那么创建一个临时表,然后将信息Insert到表中,然Select出来,接着跟数字进行比较,让SQL SERVER报错,那么结果就全出来了……所以我们要报着宁错杀,不放过的态度进行修补。
先来列出危险的内置存储过程:
xp_cmdshell
xp_regaddmultistring
xp_regdeletekey
xp_regdeletevalue
xp_regenumkeys
xp_regenumvalues
xp_regread
xp_regremovemultistring
xp_regwrite
ActiveX自动脚本:
sp_OACreate
sp_OADestroy
sp_OAMethod
sp_OAGetProperty
sp_OASetProperty
sp_OAGetErrorInfo
sp_OAStop
以上各项全在我们封杀之列,例如xp_cmdshell屏蔽的方法为:sp_dropextendedproc 'xp_cmdshell',如果需要的话,再用sp_addextendedproc 'xp_cmdshell', 'xpsql70.dll'进行恢复。如果你不知道xp_cmdshell使用的是哪个.dll文件的话,可以使用 sp_helpextendedproc xp_cmdshell来查看xp_cmdshell使用的是哪个动态联接库。另外,将xp_cmdshell屏蔽后,我们还需要做的步骤是将 xpsql70.dll文件进行改名,以防止获得SA的攻击者将它进行恢复。
7.使用应用层过滤防范URL入侵
安装Deer Field、8Sign Firewall等具备应用层过滤功能的防火墙,对Url提交的非法字符进行整体过滤,可防范网站程序编写时存在的对敏感字符未过滤的漏洞。需要过滤的字符列表(□表示空格!):
□and□ '%20and%20 '%20or%20 □or□ □AND□ '%20AND%20 '%20OR%20 □OR□ %00 □1=1 □1=2 ... ../ .../ ' □select□ □update□ cmd.exe
winnt system32 □from□ □where□ □password□ dir□ .. ... .mdb .asa .sql %2523 %25 %23 %5c #x exec insert select delete count □user□ xp_cmdshell □add□ □net□ □Asc□
'or'='or'等等。
在扩展名过滤中,将所有站点内不需要的文件类型从过滤的允许列表中删除;对敏感的需要特别保护的文件类型的扩展名,将它们添加到扩展名过滤列表中。
以上特征字符串可能是分别针对ASP和PHP的,但由于配置不复杂,因此建议不管什么类型的后台程序,都在防火墙上全面设置一下应用层过滤规则!!
8. PHP木马的攻击的防御之道
首先修改httpd.conf,如果你只允许你的php脚本程序在web目录里操作,还可以修改httpd.conf文件限制php的操作路径。比如你的web目录是/usr/local/apache/htdocs,那么在httpd.conf里加上这么几行:
php_admin_value open_basedir /usr/local/apache/htdocs
这样,如果脚本要读取/usr/local/apache/htdocs以外的文件将不会被允许,如果错误显示打开的话会提示这样的错误:
Warning: open_basedir restriction in effect. File is in wrong directory in
/usr/local/apache/htdocs/open.php on line 4
等等。
2.防止php木马执行webshell
打开safe_mode,
在,php.ini中设置
disable_functions= passthru,exec,shell_exec,system
二者选一即可,也可都选
3.防止php木马读写文件目录
在php.ini中的
disable_functions= passthru,exec,shell_exec,system
后面加上php处理文件的函数
主要有
fopen,mkdir,rmdir,chmod,unlink,dir
fopen,fread,fclose,fwrite,file_exists
closedir,is_dir,readdir.opendir
fileperms.copy,unlink,delfile
即成为
disable_functions= passthru,exec,shell_exec,system,fopen,mkdir,rmdir,chmod,unlink,dir
,fopen,fread,fclose,fwrite,file_exists
,closedir,is_dir,readdir.opendir
,fileperms.copy,unlink,delfile
ok,大功告成,php木马拿我们没辙了,^_^
遗憾的是这样的话,利用文本数据库的那些东西就都不能用了。
如果是在windos平台下搭建的apache我们还需要注意一点,apache默认运行是system权限,这很恐怖,这让人感觉很不爽.那我们就给apache降降权限吧.
net user apache fuckmicrosoft /add
net localgroup users apache /del
ok.我们建立了一个不属于任何组的用户apche.
我们打开计算机管理器,选服务,点apache服务的属性,我们选择log on ,选择this account ,我们填入上面所建立的账户和密码,重启apache服务,ok,apache运行在低权限下了.
实际上我们还可以通过设置各个文件夹的权限,来让apache用户只能执行我们想让它能干的事情,给每一个目录建立一个单独能读写的用户.这也是当前很多虚拟主机提供商的流行配置方法哦,不过这种方法用于防止这里就显的有点大材小用了。
五、其他辅助安全措施
1.安装可靠的杀毒软件并立即升级;
2.安装一款可能强大且配置灵活的网络防火墙,并认真做好规则设置;
防火墙的选择、安装和配置概览:
选择:
1)一定要有出站审核功能的防火墙,防止反向连接的木马后门;
2)设置适当的安全级别,安装初期可采用学习模式并小心配置,随后入为最高安全级别;
3)配置好防火墙规则。建议默认为无匹配规则则拒绝,然后一一添加必须的规则;
4)防火墙规则要经常备份和检查,发现可疑规则要高度警惕,或者不宝藏恢复备份规则。
5)选择建议:天网;Look 'n' Stop、ZoneAlarm;服务器建议Deer Field。
6)常用端口:FTP:21 WEB:80 SMTP:25 POP3:110 终端服务:3389(不建议使用;建议修改) MYSQL:3306 可在数据库的配置文件中将端口改一下,比如3389,让人家连吧:)
其他如远程管理工具的端口也不建议使用默认端口。
7)服务器建议使用DeerField对各种注入等手段通过URL提交的命令的关键字以及敏感文件的扩展名进行过滤,如.MDB、‘、--、NULL、 select、 %5c、c:、cmd、system32、xp_ cmdshell、exec、@a、dir、alert()、’or’’=’、Where、count(*)、between、and、inetpub、 www.juexiang.comnchar、,%2B、%25等。对于提交有上述字串请示的IP,一般都是人为有意进行,因此可令防火墙对这类访问的IP进行较长时间的屏蔽。
其他安全工具安装安全工具:
如Urlscn、IISLock等。
3.修改系统目录和程序目录中所有文件的日期、时间为一个特定的值,以便日后查找可疑程序时筛选方便;
全部配置完毕,对系统目录和程序目录分别制作文件列表,将列表保存到隐藏分区中。
4.在网络的另一台计算机上,使用多种流行的扫描工具对服务器进行扫描,检测是否仍然有未处理好的已知漏洞。
5.针对现有免费代码的利用安全问题
免费程序不要真的就免费用,既然你可以共享原码,那么攻击者一样可以分析代码。如果有能力的站长最好还是更改一下数据库表名,字段名,只修改关键的 admin, username, password就可以了,比如forum_upasswd 这样的字段名谁能猜到?如果你猜到了,最好赶快去买彩票吧,特等奖不是你还会有谁呢?另外,一般站点的关键就在于管理员的密码,很好的保护好你的管理员密码那是至关重要的,至少10位的数字字母组合。另外加上现在大多数站点程序都会使用MD5来加密用户密码,加上你密码的强壮性,那样你站点的安全性就大大的提高了。即使出现了SQL Injection漏洞,攻击者也不可能马上拿下你的站点。
6.文件列表、任务列表和服务列表的生成和利用
生成各种目录列表备份对于日后查找可疑文件是非常重要的,一般在服务器部署完毕后必须立即进行!
1、文件列表
全部配置完毕,制作系统目录和程序目录等位置的文件列表备份,并保存为文件。
建议分别进行完整列表、DLL文件列表和EXE文件列表、TMP文件列表、COM文件列表、CMD文件列表、SCR文件列表的制作。
2、任务管理器任务列表
可以采用抓图的方法保存任务管理器的任务列表;建议采用专门的进程查看工具导出详细的进程及模块列表备查!
3、系统服务列表
可对“已启动”和“自动”的服务类型进行排序,然后抓图保存。
7.隐藏重要文件/目录
可以修改注册表实现完全隐藏:HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows Current-VersionExplorerAdvancedFolderHi-ddenSHOWALL”,鼠标右击 “CheckedValue”,选择修改,把数值由1改为0
六、简单设置防御小流量DDOS攻击
小流量DDOS攻击防御在微软的hiseweb.inf文件中已经设置好了,如果导入hiseweb.inf则不需要另外设置。
防范DDOS攻击并不一定非要用防火墙。一部份DDOS我们可以通过DOS命令netstat -an|more或者网络综合分析软件:sniff等查到相关攻击手法、如攻击某个主要端口、或者对方主要来自哪个端口、对方IP等。这样我们可以利用 w2k自带的远程访问与路由或者IP策略等本身自带的工具解决掉这些攻击。做为无法利用这些查到相关数据的我们也可以尝试一下通过对服务器进行安全设置来防范DDOS攻击。如果通过对服务器设置不能有效解决,那么就可以考虑购买抗DDOS防火墙了。其实从操作系统角度来说,本身就藏有很多的功能,只是很多是需要我们慢慢的去挖掘的。这里我给大家简单介绍一下如何在Win2000环境下通过修改注册表,增强系统的抗DoS能力。
请注意,以下的安全设置均通过注册表进行修改,该设置的性能取决于服务器的配置,尤其是CPU的处理能力。如按照如下进行安全设置,采用双路至强2.4G的服务器配置,经过测试,可承受大约1万个包的攻击量。
'关闭无效网关的检查。
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters]
当服务器设置了多个网关,这样在网络不通畅的时候系统会尝试连接第二个网关,通过关闭它可以优化网络。
"EnableDeadGWDetect"=dword:00000000
'禁止响应ICMP重定向报文。此类报文有可能用以攻击,所以系统应该拒绝接受ICMP重定向报文。
"EnableICMPRedirects"=dword:00000000
'不允许释放NETBIOS名。当攻击者发出查询服务器NETBIOS名的请求时,可以使服务器禁止响应。
注意系统必须安装SP2以上
"NonameReleaseOnDemand"=dword:00000001
'发送验证保持活动数据包。该选项决定TCP间隔多少时间来确定当前连接还处于连接状态,不设该值,则系统每隔2小时对TCP是否有闲置连接进行检查,这里设置时间为5分钟。
"KeepAliveTime"=dword:000493e0
'禁止进行最大包长度路径检测。该项值为1时,将自动检测出可以传输的数据包的大小,
'可以用来提高传输效率,如出现故障或安全起见,设项值为0,表示使用固定MTU值576bytes。
"EnablePMTUDiscovery"=dword:00000000
' 启动syn攻击保护。缺省项值为0,表示不开启攻击保护,项值为1和2表示启动syn攻击保护,设成2之后'安全级别更高,对何种状况下认为是攻击,则需要根据下面的TcpMaxHalfOpen和TcpMaxHalfOpenRetried值'设定的条件来触发启动了。这里需要注意的是,NT4.0必须设为1,设为2后在某种特殊数据包下会导致系统重启。
"SynAttackProtect"=dword:00000002
'同时允许打开的半连接数量。所谓半连接,表示未完整建立的TCP会话,用netstat命令可以看到呈SYN_RCVD状态的就是。这里使用微软建议值,服务器设为100,高级服务器设为500。建议可以设稍微小一点。
"TcpMaxHalfOpen"=dword:00000064
'判断是否存在攻击的触发点。这里使用微软建议值,服务器为80,高级服务器为400。
"TcpMaxHalfOpenRetried"=dword:00000050
'设置等待SYN-ACK时间。缺省项值为3,缺省这一过程消耗时间45秒。项值为2,消耗时间为21秒。
'项值为1,消耗时间为9秒。最低可以设为0,表示不等待,消耗时间为3秒。这个值可以根据遭受攻击规模修改。
'微软站点安全推荐为2。
"TcpMaxConnectResponseRetransmissions"=dword:00000001
'设置TCP重传单个数据段的次数。缺省项值为5,缺省这一过程消耗时间240秒。微软站点安全推荐为3。
"TcpMaxDataRetransmissions"=dword:00000003
设置syn攻击保护的临界点。当可用的backlog变为0时,此参数用于控制syn攻击保护的开启,微软站点安全推荐为5。
"TCPMaxPortsExhausted"=dword:00000005
'禁止IP源路由。缺省项值为1,表示不转发源路由包,项值设为0,表示全部转发,设置为2,表示丢弃所有接受的源路由包,微软站点安全推荐为2。
"DisableIPSourceRouting"=dword:0000002
'限制处于TIME_WAIT状态的最长时间。缺省为240秒,最低为30秒,最高为300秒。建议设为30秒。
"TcpTimedWaitDelay"=dword:0000001e
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesNetBTParameters]
'增大NetBT的连接块增加幅度。缺省为3,范围1-20,数值越大在连接越多时提升性能。每个连接块消耗87个字节。
"BacklogIncrement"=dword:00000003
'最大NetBT的连接快的数目。范围1-40000,这里设置为1000,数值越大在连接越多时允许更多连接。
"MaxConnBackLog"=dword:000003e8
[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesAfdParameters]
'配置激活动态Backlog。对于网络繁忙或者易遭受SYN攻击的系统,建议设置为1,表示允许动态Backlog。
"EnableDynamicBacklog"=dword:00000001
'配置最小动态Backlog。默认项值为0,表示动态Backlog分配的自由连接的最小数目。当自由连接数目低于此数目时,将自动的分配自由连接。默认值为0,对于网络繁忙或者易遭受SYN攻击的系统,建议为20。
"MinimumDynamicBacklog"=dword:00000014
'最大动态Backlog。表示定义最大"准"连接的数目,主要看内存大小,理论每32M内存最大可以'增加5000个,这里设为20000。
"MaximumDynamicBacklog"=dword:00002e20
'每次增加的自由连接数据。默认项值为5,表示定义每次增加的自由连接数目。对于网络繁忙或者易遭受SYN攻击'的系统,建议设置为10。
"DynamicBacklogGrowthDelta"=dword:0000000a
以下部分需要根据实际情况手动修改
'[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters]
'启用网卡上的安全过滤
'"EnableSecurityFilters"=dword:00000001
'同时打开的TCP连接数,这里可以根据情况进行控制。
'"TcpNumConnections"=
'该参数控制 TCP 报头表的大小限制。在有大量 RAM 的机器上,增加该设置可以提高 SYN 攻击期间的响应性能。
'"TcpMaxSendFree"=
'[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParametersInterfaces{ 自己的网卡接口 }]
'禁止路由发现功能。ICMP路由通告报文可以被用来增加路由表纪录,可以导致攻击,所以禁止路由发现。
"PerformRouterDiscovery "=dword:00000000
七、日常安全检查
1、日志查看
包括系统日志、IIS以及SQL等的日志、防火墙日志、自动备份程序的工作日志;检查日志中异常内容;日志是否有明显时间中断现象;是否出现某些日志被清空的现象;有无伪造日志的迹象。
以上要经常检查即可积累经验。
2、检查账户列表、系统服务列表、自动加载的程序列表;
3、检查异常文件。可结合上述的文件日期、文件列表进行快速排查。还可针对特定木马程序的文件名进行搜索(如ca.exe cca.exe findpass.exe pulist.exe 3389.exe等),特别要注意搜索带有数字“0”或“1”的文件。另外用搜索文件功能,查找所有2K-20K、日期为半个月左右的所有文件,以便从中发现可疑文件。另外,必要时可根据特定木马程序的特征字串,对站点目录下相关类型的文件进行内容搜索。对于各分区根目录下的文件也要特别注意!
4、不定期用光盘PE系统引导,用ERDCommander查看硬盘目录下是否有可疑文件、检查硬盘系统注册表是否有不明自动加载项目以及常用文件扩展名关联是否更改、是否存在不明用户等。
5、检查日志备份、数据库备份之类的自动备份工具是否工作正常。
6、检查防火墙规则,查看是否有新添加的规则、不明规则;检查关键规则是否存在修改;不定期用配置好的规则备份恢复一次。
7、定期修改管理员密码以及其他相关管理密码,并在异地做好物理记录。
8、检查系统安全补丁的升级情况。使用自动升级功能时,要检查自动升级是否生效,必要时建议不定期手工进行一次系统升级。
9、查找WEBSHELL。考虑到多数情况下的入侵者水平,最多也就用用海阳,而且最多也就把部分版权信息去掉,搜索所有内容包含lcx的.ASP文件。如果你了解到最近有其他的程序后门,可以使用相应的关键字搜索是否存在相关文件。为保证可靠,搜索内容应该由简单的LCX扩展到 wscript.shell等更加广泛与匹配的关键词的查找
10、审核文件及目录权限。仔细检查重要的目录或文件的权限是否适当。
11、审查应用程序及系统的升级情况。如系统安全补丁、Serv-U等工具是否必需升级。
12、审查IP过滤策略。如果TCP过滤未开,IPSEC未指派则非常危险