二、防溢出,让攻击者无功而返

溢出是操作系统、应用软件永远的痛!在骇客频频攻击、系统漏洞层出不穷的今天,任何人都不能保证操作系统系统、应用程序不被溢出。既然溢出似乎是必然的,而且利用溢出攻击的门槛比较低,利用工具有一定电脑基础的人都可以完成一次溢出。这样看来,我们的系统就处于随时被溢出的危险中,所以防溢出也是我们必须要做的工作。

1、全面出击,严防死守

(1).必须打齐补丁

尽最大的可能性将系统的漏洞补丁都打完;Microsoft Windows Server系列的服务器系统可以将自动更新服务打开,然后让服务器在指定的某个时间段内自动连接到Microsoft Update网站进行补丁的更新。如果服务器为了安全起见禁止了对公网外部的连接的话,可以用Microsoft WSUS服务在内网进行升级。

(2).服务最小化

最少的服务等于最大的安全,停掉一切不需要的系统服务以及应用程序,最大限度地降底服务器的被攻击系数。比如前阵子的NDS溢出,就导致很多服务器挂掉了。其实如果WEB类服务器根本没有用到DNS服务时,大可以把DNS服务停掉,这样DNS溢出就对你们的服务器不构成任何威胁了。

图5

图5

(3).端口过滤

启动TCP/IP端口的过滤,仅打开服务器常用的TCP如21、80、25、110、3389等端口;如果安全要求级别高一点可以将UDP端口关闭,当然如果这样之后缺陷就是如在服务器上连外部就不方便连接了,这里建议大家用IPSec来封UDP。在协议筛选中只允许TCP协议、UDP协议 以及RDP协议等必需用协议即可;其它无用均不开放。

(4).系统防火墙

启用IPSec策略,为服务器的连接进行安全认证,给服务器加上双保险。封掉一些危险的端口,诸如:135 145 139 445 以及UDP对外连接之类、以及对通读进行加密与只与有信任关系的IP或者网络进行通讯等等。通过IPSec禁止UDP或者不常用TCP端口的对外访问就可以非常有效地防反弹类木马。

(5).系统命令防御

删除、移动、更名或者用访问控制表列Access Control Lists (ACLs)控制关键系统文件、命令及文件夹:攻击者通常在溢出得到shell后,来用诸如net.exe、net1.exe、ipconfig.exe、user.exe、query.exe、 regedit.exe、regsvr32.exe 来达到进一步控制服务器的目的。如:加账号、克隆管理员了等等。我们可以将这些命令程序删除或者改名。

图6

图6

访问控制表列ACLS控制找到%windir%system32下找到cmd.exe、cmd32.exe、net.exe、net1.exe、ipconfig.exe、tftp.exe、ftp.exe、user.exe、reg.exe、regedit.exe、regedt32.exe、regsvr32.exe这些黑客常用的文件,在“属性”→“安全”中对他们进行访问的ACLs用户进行定义,诸如只给administrator有权访问,如果需要防范一些溢出攻击、以及溢出成功后对这些文件的非法利用;那么我们只需要将system用户在ACLs中进行拒绝访问即可。

如果你觉得在GUI下面太麻烦的话,你也可以用系统命令的CACLS.EXE来对这些.exe文件的Acls进行编辑与修改,或者说将他写成一个.bat批处理 文件来执行以及对这些命令进行修改。对磁盘如C、D、E、F等进行安全的ACLS设置从整体安全上考虑的话也是很有必要的,另外特别要对Windows、WinntSystem、Document and Setting等文件夹。


相关内容