ACK攻击是什么意思?ACK攻击怎么防御?

驰网飞飞
江西驰网科技官方账号
2024-10-25 16:55:24

ACK攻击原理

ACK Flood攻击是TCP连接建立之后,所有传输的TCP报文都是带有ACK标志位的数据包。

接收端在收到一个带有ACK标志位的数据包的时候,需要检查该数据包所表示的连接四元组是否存在,如果存在则检查该数据包所表示的状态是否合法,然后再向应用层传递该数据包。

如在检查中发现数据包不合法,如所指向的目的端口未开放,则操作系统协议栈会回应RST包告诉对方此端口不存在。

当攻击程序每秒钟发送ACK报文的速率达到一定的程度,才能使主机和防火墙的负载有大的变化。当发包速率很大的时候,主机操作系统将耗费大量的精力接收报文、判断状态,同时要主动回应RST报文,正常的数据包就可能无法得到及时的处理。这时候客户端(以IE为例)的表现就是访问页面反应很慢,丢包率较高。这就是ACK攻击。

此时服务器要做两个动作,查表和回应ack/rst。

这种攻击方式没有syn flood给服务器带来的冲击大(因为syn flood占用连接),此类攻击一定要用大流量ack小包冲击才会对服务器造成影响。

根据tcp协议栈原理,随机源IP的ack小包应该会被server很快丢弃,因为在服务器的tcp堆栈中没有这些ack包的状态信息。

在实际测试中发现有一些tcp服务对ack flood比较敏感。

对于Apache或者IIS来说,几十kpps的ack flood不会构成威胁,但更高数量的ack flood冲击会造成网卡中断频率过高负载过重而停止响应。

jsp server在数量不多的ack小包冲击下jsp server很难处理正常的连接请求。

所以ack flood不仅危害路由器等网络设备,并且对服务器上的应用也有很大的影响。

ACK攻击危害

attacker利用僵尸网络发送大量的ack报文,会导致以下三种危害:

1、带有超大载荷的ack flood攻击,会导致链路拥塞。
2、攻击报文到达服务器导致处理性能耗尽,从而拒绝正常服务。
3、极高速率的变源变端口ack flood攻击,很容易导致依靠会话转发的设备转发性能降低甚至成网络瘫痪。

ACK攻击怎么防御?防御原理

抗D设备基于目的地址对ack报文速率进行统计,当ack报文速率超过阈值启动源认证防御。
认证源防御过程如图:

说明
1、攻击流量达到阈值后启动ack防护。
2、真实的报文经过ack重传之后,由客户端重新发起连接,此时会通过syn验证算法通过后加入白名单信任。
3、伪造的ack报文通过查询会话表直接丢弃。

感谢您的阅读,服务器大本营-技术文章内容集合站,助您成为更专业的服务器管理员!

...全文
76 回复 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

6

社区成员

发帖
与我相关
我的任务
社区描述
服务器大本营-游戏开发技术交流论坛,分享热门游戏服务器搭建、steam自建服务器、APP开发定制、小程序开发定制和ERP企业管理系统开发等技术。欢迎程序员、技术员、游戏爱好者加入!
linux服务器游戏 技术论坛(原bbs) 浙江省·杭州市
社区管理员
  • 驰网飞飞
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

感谢在众多社区中选择加入服务器大本营社区,我是飞飞,一个专业做服务器租用与托管的小姐姐。社区会分享Windows、Linux、Unix各种操作系统和网站、软件、游戏、企业管理系统各种开发相关知识,飞飞希望可以给大家营造一个良好的学习交流环境,一起快乐的学习成长~

在服务器大本营你可以和我们分享:

1)业内的趣闻

2)存疑的问题

3)对个人规划的迷茫

4)学习中你看到的好文章

5)技术员的日常

6)对社区的改进建议

试试用AI创作助手写篇文章吧