今年年初,一则名为“8848遭到DDoS攻击,怀疑被百度攻击”的新闻引起了用户的广泛关注。这次事件之所以引人注目,除了当事双方都是互联网中知名的企业以外,“DDoS”这个词的再次出现也极大地吸引了媒体和用户的眼球。今天我们就针对个人用户的DDoS攻击和防御进行一番深入的了解。
什么是DDoS攻击
DDoS是英文Distributed Denial of Service的缩写,中文意思是“分布式拒绝服务”。那什么又是拒绝服务呢?用户可以这样理解,凡是能导致合法用户不能进行正常的网络服务的行为都算是拒绝服务攻击。拒绝服务攻击的目的非常明确,就是要阻止合法用户对正常网络资源的访问。
DDoS攻击主要是通过很多“傀儡主机”向远程计算机发送大量看似合法的数据包,从而造成网络阻塞或服务器资源耗尽而导致拒绝服务。分布式拒绝服务攻击一旦被实施,攻击数据包就会犹如洪水般涌向远程计算机,从而把合法的数据包淹没,导致合法用户无法正常地访问服务器的网络资源。因此,分布式拒绝服务也被称之为“洪水攻击”。DDoS的表现形式主要有两种,一种是流量攻击,主要是针对网络带宽的攻击,即大量攻击包导致网络带宽被阻塞,合法的网络数据包被虚假的网络数据包淹没而无法到达主机;另一种为资源耗尽攻击,主要是针对服务器主机进行的攻击,即通过大量的攻击包导致主机的内存被耗尽,或是CPU被内核及应用程序占完而造成无法提供网络服务。
DDoS的攻击类型
DDoS的攻击类型目前主要包括三种方式,即TCP-SYN Flood攻击、UDP Flood攻击以及提交脚本攻击。
TCP-SYN Flood攻击又称半开式连接攻击,每当我们进行一次标准的TCP连接,都会有一个三次握手的过程,而TCP-SYN Flood在它的实现过程中只有前两个步骤。这样,服务方会在一定时间处于等待接收请求方ASK消息的状态。由于一台服务器可用的TCP连接是有限的,如果恶意攻击方快速连续地发送此类连接请求,则服务器可用TCP连接队列很快将会阻塞,系统资源和可用带宽急剧下降,无法提供正常的网络服务,从而造成拒绝服务。
UDP Flood攻击在网络中的应用也是比较广泛的,基于UDP的攻击种类也是比较多的,如目前在互联网上提供网页、邮件等服务的设备一般是使用UNIX操作系统的服务器,它们默认是开放一些有被恶意利用可能的UDP服务。如果恶意攻击者将UDP服务互指,则网络可用带宽会很快耗尽造成拒绝服务。
提交脚本攻击主要是针对存在ASP、PHP、CGI等脚本程序,并调用MSSQL、MYSQL、ACCESS等数据库的网站系统设计的。首先是和服务器建立正常的TCP连接,并不断地向数据库提交注册、查询、刷新等消耗资源的命令,最终将服务器的资源消耗掉从而导致拒绝服务。
防范DDoS的三条军规
1.检查并修补系统漏洞
及早发现当前系统可能存在的攻击漏洞,及时安装系统的补丁程序。对一些重要的信息(例如系统配置信息)建立和完善备份机制。对一些特权账号(例如管理员账号)的密码设置要谨慎。通过这样一系列的举措可以把攻击者的可乘之机降低到最小。
2.删除多余的网络服务
在网络管理方面,要经常检查系统的物理环境,禁止那些不必要的网络服务。建立边界安全界限,确保输出的包受到正确限制。经常检测系统配置信息,并注意查看每天的安全日志。如果你是一个单机用户,可去掉多余不用的网络协议,完全禁止NetBIOS服务,从而堵上这个危险的“漏洞”。
3. 自己定制防火墙规则
利用网络安全设备(例如:硬件防火墙)来加固网络的安全性,配置好这些设备的安全规则,过滤掉所有可能的伪造数据包,这种方法适合所有Windows操作系统的用户。以天网个人防火墙为例,新建一条空规则,规定如下:“数据包方向”设置为“接收”,“对方IP地址”设置为“任何”,“协议”设置为“TCP”,“本地端口”设置为“139到139”,“对方端口”设置为“0到0”,在“标志位”中选上“SYN标志”,“动作”选择“拦截”,保存即可。另外,其他危险的端口也可以用该方法进行设置。 |
|