DDos分布式拒绝服务攻击

DDos攻击分为很多种,下面以SYN Flooding作为栗子

DDos分布式拒绝服务攻击往往是很多台计算机同时攻击一台计算机

(很牛逼吧?)使受攻击的目标无法使用。

SYN Flooding 原理其实就是采用三次握手对机器进行欺骗

在 看SYN攻击之前,我们先来看linux内核对SYN怎么处理。

Server收到一个SYN请求,Server内部就会维护一个队列(暂时称为半连接队列,并不准确),然后 server发送 syn和 ack给client端,并等待client端的ack应答,接收到ack应答则三次握手成功,接收不到,则根据超时重传机制继续发送syn和 ack 给client端

那么利用这一特征:

	在构建网络包,原地址是随机构建的,这意味着当Server服务器收到SYN包时,应答ACK 和SYN 不会得到回应。破坏了第三次握手🤝,在这种情况下 ,Server的内核就会维护一个很大的任务队列来管理这些半连接请求,当半连接足够多时,就会导致新来的正常连接请求得不到响应,也就是所谓的DOS攻击。

在这里插入图片描述
接受的时候拿随机Ip来接收SYN和ACK,导致永远接收不到Server的响应,那么就会一直一直重传

我们知道,Linux内核协议栈为每一个tcp连接管理使用两个队列:
1 半连接队列:用于保存处于SYN_SENT 和 SYN_RECV状态的请求
2 连接队列:又称accept队列,用于保存处于establisheed 状态,但并没有被应用层调用accept取走的请求

全连接队列受listen第二个参数影响,当全连接队列满了的时候,就无法让当前连接进入established状态了。
全连接队列的长度 = listen第二个参数 + 1;

虽然现在有的路由器进行的一定的防止,但,说实话,高级黑客眼中,这就是雕虫小技,照样可以攻击你。

那没办法了吗? 是真的,没办法,只能做一点点防止手段,但根本不能有效预防。

试想你被一群人群殴是什么样子。。

SYN Flooding 攻击防护手段:

通过伪造TCP协议请求的方式来进行攻击,这是一种TCP协议缺陷

tcp_max_syn_backlog : 即增加半连接队列长度
tcp_synack_retries : 即减少 重传次数,原来默认5次,我们可以设置为3次 ,但别设置成一次,会影响正常用户。

据说比较有效的是激活 tcp_syncookies : 但好像么啥用

但攻击厉害的时候,这些防护一点用都没

最好的做法,买个云服务器吧,云会自己过滤黑客攻击。

病毒 :搞破坏。(沙箱/病毒库(识别md5码))eg:熊猫烧香

木 马:不搞破坏。eg:盗号

其实病毒现在都很少了,黑客已不傻

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值