SafeWos是一个专业解决安全问题的运维顾问服务平台,专为企业安全定制。
近年来,随着互联网业务发发展,数据存储需求也越来越大,因此也伴随着ddos攻击的越发泛滥,这里就为大家介绍一下ddos原理和ddos防御方法,为受到ddos攻击困扰的朋友们提供一些帮助。
ddos原理
什么是DDoS攻击?
DoS(Denial of Service,拒绝服务)攻击
广义而言,凡是利用网络安全防护措施不足导致用户不能或不敢继续使用正常服务的攻击手段,都称之为拒绝服务攻击。其目的是通过消耗网络带宽或系统资源,使网络或计算机不能提供正常的服务。
DDoS(Distributed Denial of Service, DDoS)是一种恶意企图,通过控制多个肉鸡或服务器组成的僵尸网络,对目标发送大量看似合法请求,从而占用大量网络资源,瘫痪网络,阻止用户对网络资源的正常访问。
DDoS攻击通过利用多个受损计算机系统作为攻击流量来源来实现有效性。被利用的机器可以包括计算机和其他网络资源,例如物联网设备。
从高层次来看,DDoS攻击就像堵塞高速公路的交通堵塞,阻止了常规交通到达其所需的目的地。
ddos攻击原理
TCP SYN FLOOD
SYN FLOOD攻击是在TCP三次握手过程中产生的。攻击者通过发送大量伪造的带有SYN标志位的TCP报文,与目标主机建立了很多虚假的半开连接。
如果服务器没有收到ACK数据包,TCP连接将处于半开状态,直到服务器从客户端收到ACK数据包或者连接因为time-to-live(TTL)计时器设置而超时为止。在连接超时的情况下,事先分配的控制块将被释放。
当一个攻击者有意地、重复地向服务器发送SYN数据包,但不对服务器发回的SYN ACK数据包答复ACK数据包时,就会发生TCP SYN泛洪攻击。通常黑客会伪造TCP SYN的源地址为一个不存在的地址,让服务器根本没法回包,并且增加TCP SYN的报文长度,同时堵塞机房出口。
Ip flood
此攻击以多个随机的源主机地址向目的主机发送超大量的随机或特定的IP包,造成目标主机不能处理其他正常的IP报文。
UDP FLOOD
又称UDP洪水攻击或UDP淹没攻击,UDP是没有连接状态的协议,因此可以发送大量的UDP包到某个端口,如果是个正常的UDP应用端口,则可能干扰正常应用,如果是没有正常应用,服务器要回送ICMP,这样就消耗了服务器的处理资源,而且很容易阻塞上行链路的带宽。通常黑客会发送大量长度较长,源IP伪造成不存在地址的UDP报文,直接堵塞机房出口。
IP scan
攻击者 通过IP扫描可以迅速服务器网络情况及服务器主机信息,为后面的攻击做好准备。通过发送IP扫描探测包探测存在的服务器主机。
Icmp Flood
icmp flood 也就是 ping flood,此攻击在短时间内向目的主机发送大量的ping的echo报文,主机不断响应,造成网络堵塞、主机资源耗尽。
Smurf攻击
攻击者向网关发送ICMP请求包,并将该ICMP请求报文的源地址伪造成受害主机IP地址,目的地址为广播地址。路由器在接受到该数据包,发现目的地址是广播地址,就会将该数据包广播出去,局域网内所有的存活主机都会受到一个ICMP请求包,源地址是受害主机IP。接下来受害主机就会收到该网络内所有主机发来的ICMP应答报文,通过大量返回的ICMP应答报文来淹没受害主机,最终导致网络阻塞,受害主机崩溃。
Port scan
当一个源ip地址在规定的时间间隔内将tcp syn包发送给一个目标地址的多个不同端口时,就是一次端口扫描,目的是扫描 可用的服务,从而识别目标的服务。
反射型攻击
反射拒绝服务攻击又称DRDoS攻击(Distributed Reflection Denial of Service),或分布式反射拒绝服务攻击。其原理如图2-22所示,是黑客伪造成被攻击者的IP地址,向互联网上大量开放特定服务的服务器发起请求,接收到请求的那些主机根据源IP地址将响应数据包返回给受害者。整个过程中,返回响应的服务器并不知道请求源的恶意动机。
ping of death
根据tcp/ip的规范,一个包的长度最大为65535字节。攻击向一个目标地址发送icmp echo包的大于65535字节(这需要多个分片叠加才能做到),当主机重组这些分片发现包大于65535字节时,就会导致宕机。
CC攻击
利用 代理服务器 向 受害者 发起大量HTTP Get 请求;主要请求动态页面,涉及到数据库访问操作;数据库负载以及数据库连接池负载极高,无法响应正常请求
ddos防御方法
对付DDOS不太容易,首先要找一个靠谱的主机供应商,我之前有个主机供应商,一发现某个IP被DDOS,就主动屏蔽这个IP好几天,实际上就是硬件和技术能力不足的表现。
国外的主机供应商也未必靠谱,比如之前有次被DDOS,我就把博客转到Dreamhost的空间,事实表明Dreamhost的防DDOS的能力不敢恭维,DDOS来了之后,Dreamhost对付DDOS倒是不客气,直接把中国地区的IP全给屏蔽了。
一般来说,DDOS是需要花钱和带宽的,解决DDOS也需要花钱和带宽,那么,如果服务器被DDOS了,我们应该怎么办呢?
1、保证服务器系统的安全
首先要确保服务器软件没有任何漏洞,防止攻击者入侵。确保服务器采用最新系统,并打上安全补丁。在服务器上删除未使用的服务,关闭未使用的端口。对于服务器上运行的网站,确保其打了最新的补丁,没有安全漏洞。
定期扫描现有的网络主节点,清查可能存在的安全漏洞,对新出现的漏洞及时进行清理。骨干节点的计算机因为具有较高的带宽,是黑客利用的最佳位置,因此对这些主机本身加强主机安全是非常重要的。而且连接到网络主节点的都是服务器级别的计算机,所以定期扫描漏洞就变得更加重要了。
2、分布式集群防御:
这是目前网络安全界防御大规模DDOS攻击的最有效办法。分布式集群防御的特点是在每个节点服务器配置多个IP地址(负载均衡),并且每个节点能承受不低于10G的DDOS攻击,如一个节点受攻击无法提供服务,系统将会根据优先级设置自动切换另一个节点,并将攻击者的数据包全部返回发送点,使攻击源成为瘫痪状态,从更为深度的安全防护角度去影响企业的安全执行决策。
3、隐藏服务器的真实IP地址
不要把域名直接解析到服务器的真实IP地址,不能让服务器真实IP泄漏,服务器前端加CDN中转(免费的CDN一般能防止5G左右的DDOS),如果资金充裕的话,可以购买高防的盾机,用于隐藏服务器真实IP,域名解析使用CDN的IP,所有解析的子域名都使用CDN的IP地址。此外,服务器上部署的其他域名也不能使用真实IP解析,全部都使用CDN来解析。
总之,只要服务器的真实IP不泄露,5G以下小流量DDOS的预防花不了多少钱,免费的CDN就可以应付得了。如果攻击流量超过10G,那么免费的CDN可能就顶不住了,需要购买一个高防的盾机来应付了,而服务器的真实IP同样需要隐藏。
4、过滤不必要的服务和端口:
可以使用Inexpress、Express、Forwarding等工具来过滤不必要的服务和端口,即在路由器上过滤假IP。比如Cisco公司的CEF(Cisco Express Forwarding)可以针对封包Source IP和Routing Table做比较,并加以过滤。只开放服务端口成为目前很多服务器的流行做法,例如WWW服务器那么只开放80而将其他所有端口关闭或在防火墙上做阻止策略。
5、限制同时打开的SYN半连接数目,缩短SYN半连接的time out 时间,限制SYN/ICMP流量
用户应在路由器上配置SYN/ICMP的最大流量来限制SYN/ICMP封包所能占有的最高频宽,这样,当出现大量的超过所限定的SYN/ICMP流量时,说明不是正常的网络访问,而是有黑客入侵。早期通过限制SYN/ICMP流量是最好的防范DOS的方法,虽然目前该方法对于Ddos效果不太明显了, 不过仍然能够起到一定的作用。
6、高防智能DNS解析:
高智能DNS解析系统与DDOS防御系统的完美结合,为企业提供对抗新兴安全威胁的超级检测功能。它颠覆了传统一个域名对应一个镜像的做法,智能根据用户的上网路线将DNS解析请求解析到用户所属网络的服务器。同时智能DNS解析系统还有宕机检测功能,随时可将瘫痪的服务器IP智能更换成正常服务器IP,为企业的网络保持一个永不宕机的服务状态。锐速云告诉大家DDoS攻击的网络流量清洗当发生DDOS攻击时,网络监控系统会侦测到网络流量的异常变化并发出报警。在系统自动检测或人工判断之后,可以识别出被攻击的虚拟机公网IP地址。这时,可调用系统的防DDOS攻击功能接口,启动对相关被攻击IP的流量清洗。流量清洗设备会立即接管对该IP地址的所有数据包,并将攻击数据包清洗掉,仅将正常的数据包转发给随后的网络设备。这样,就能保证整个网络正常的流量通行,而将DDOS流量拒之门外。
7、正确设置防火墙
禁止对主机的非开放服务的访问
限制特定IP地址的访问
过滤所有RFC1918 IP地址RFC1918 IP地址是内部网的IP地址,像10.0.0.0、192.168.0.0和172.16.0.0,它们不是某个网段的固定的IP地址,而是Internet内部保留的区域性IP地址,应该把它们过滤掉。此方法并不是过滤内部员工的访问,而是将攻击时伪造的大量虚假内部IP过滤,这样也可以减轻Ddos的攻击。
启用防火墙的防DDoS的属性
严格限制对外开放的服务器的向外访问
运行端口映射程序祸端口扫描程序,要认真检查特权端口和非特权端口。
在骨干节点配置防火墙
防火墙本身能抵御Ddos攻击和其他一些攻击。在发现受到攻击的时候,可以将攻击导向一些牺牲主机,这样可以保护真正的主机不被攻击。当然导向的这些牺牲主机可以选择不重要的,或者是linux以及unix等漏洞少和天生防范攻击优秀的系统。
8、异常流量的清洗过滤:
通过DDOS硬件防火墙对异常流量的清洗过滤,通过数据包的规则过滤、数据流指纹检测过滤、及数据包内容定制过滤等顶尖技术能准确判断外来访问流量是否正常,进一步将异常流量禁止过滤。单台负载每秒可防御800-927万个syn攻击包。
当发生DDOS攻击时,网络监控系统会侦测到网络流量的异常变化并发出报警。在系统自动检测或人工判断之后,可以识别出被攻击的虚拟机公网IP地址。这时,可调用系统的防DDOS攻击功能接口,启动对相关被攻击IP的流量清洗。流量清洗设备会立即接管对该IP地址的所有数据包,并将攻击数据包清洗掉,仅将正常的数据包转发给随后的网络设备。这样,就能保证整个网络正常的流量通行,而将DDOS流量拒之门外。
ddos防御
如果有经济实力的用户,可以采用云DDoS清洗方式,可以为企业用户带来诸多好处。其表现在不仅可以提升综合防护能力,用户能够按需付费,可弹性扩展,而且还能够基于大数据来分析预测攻击,同时能够免费升级。对于企业用户来说,则可实现零运维、零改造。
客服电话:159-6020-8552
工作时间:9:00-18:00 (工作日)
意见建议:safewos@qq.com