×

【漏洞预警】Linux 内核中TCP SACK机制远程拒绝服务漏洞
  

SANGFOR_智安全 4580

{{ttag.title}}
近日,Netflix公司已经确定了几个TCP网络FreeBSD 和Linux内核中的漏洞。这些漏洞特别涉及最小段大小(MSS)和TCP选择性确认(SACK)功能。最严重的,被称为“SACK Panic”,可以在Linux内核上远程触发内核崩溃,从而影响系统的可用性。
漏洞名称:Linux 内核中TCP SACK机制远程拒绝服务漏洞预警
威胁等级 :高危
影响范围:Linux> = 2.6.29(CVE-2019-11477)
Linux <4.15/所有Linux版本(CVE-2019-11478)
使用RACK TCP堆栈的FreeBSD 12(CVE-2019-5599)
所有Linux版本(CVE-2019-11479)
漏洞类型:拒绝服务漏洞
利用难度 :简单

TCP SACK介绍

TCP是面向连接的协议。当双方希望通过TCP连接进行通信时,他们通过交换某些信息建立连接,例如请求发起(SYN)连接,初始序列号,确认号,通过此连接使用的最大段大小(MSS),权限发送和处理选择性确认(SACK)等。此连接建立过程称为3次握手。

TCP通过称为Segment的单元发送和接收用户数据。一个TCP段包括TCP报头,选项和用户数据的。

每个TCP段具有序列号(SEQ)和确认号(ACK)。

这些SEQ和ACK号用于跟踪接收器成功接收哪些段。ACK号表示接收器的下一个预期段。

示例:上面的用户'A'通过13个100字节的段发送1千字节的数据,13因为每个段具有20字节的TCP头。在接收端,用户'B'接收段1,2,4,6,8-13,段3,5和7丢失,不被用户'B'接收。

通过使用ACK号码,用户'B'将指示它正在期望段号3,用户'A'读取为用户'B'接收到2之后没有段,并且用户'A'将重新发送全部即使用户'B'成功接收到第4,6和8-13段,从3开始的段也是如此。用户'B'无法向用户'A'表明。这是导致网络低效使用的原因。

漏洞描述和修复建议

1:CVE-2019-11477:SACK Panic(Linux> = 2.6.29)
漏洞描述
通过构造特殊的SACK,可以触发整数溢出,从而导致内核崩溃。
修复建议
应用修补程序PATCH_net_1_4.patch(https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-001/PATCH_net_1_4.patch)
此外,Linux内核版本(包括4.14版本)需要第二个补丁PATCH_net_1a.patch(https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-001/PATCH_net_1a.patch)。
解决方法#1
使用提供的过滤器(https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-001/block-low-mss/README.md)之一阻止与低MSS的连接。(过滤器中的值是示例。您可以根据您的环境应用更高或更低的限制。)请注意,这些过滤器可能会破坏依赖于低MSS的合法连接。另请注意,此缓解仅在禁用TCP探测时有效(即,net.ipv4.tcp_mtu_probingsysctl设置为0,这似乎是该sysctl的默认值)。
解决方法#2
禁用SACK处理(/proc/sys/net/ipv4/tcp_sack设置为0)。
(注:任何一种解决方法都应该足够了。没有必要同时应用这两种解决方法。)

2:CVE-2019-11478:SACK缓慢(Linux <4.15)或过多的资源使用(所有Linux版本)
漏洞描述:通过发送一个构造的SACK序列,分解TCP重传队列。针对4.15之前的Linux内核,攻击者可能进一步利用分段队列,为后续针对同一TCP连接接收的SACK导致消耗的链表运行的资源。
修复建议
应用修补程序PATCH_net_2_4.patch(https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-001/PATCH_net_2_4.patch)
解决方法#1
使用提供的过滤器之一阻止与低MSS的连接。(过滤器中的值是示例。您可以根据您的环境应用更高或更低的限制。)请注意,这些过滤器可能会破坏依赖于低MSS的合法连接。另请注意,此缓解仅在禁用TCP探测时有效(即,net.ipv4.tcp_mtu_probingsysctl设置为0,这似乎是该sysctl的默认值)。
解决方法#2
禁用SACK处理(/proc/sys/net/ipv4/tcp_sack设置为0)。
(注:任何一种解决方法都应该足够了。没有必要同时应用这两种解决方法。)

3:CVE-2019-5599:SACK Slowness(使用RACK TCP堆栈的FreeBSD 12)
漏洞描述:
通过发送一个构造好的SACK序列,分割RACK发送映射。攻击者可能能够进一步利用分段发送映射来为后续针对该相同TCP连接接收的SACK引起消耗的链表运行的资源。
解决方法#1
应用补丁split_limit.patch(https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-001/split_limit.patch)并将net.inet.tcp.rack.split_limitsysctl设置为合理的值以限制SACK表的大小。
解决方法#2
暂时禁用RACK TCP堆栈。
(注:任何一种解决方法都应该足够了。没有必要同时应用这两种解决方法。)

4:CVE-2019-11479:由于MSS值较低导致的过多资源消耗(所有Linux版本)
漏洞描述
攻击者可以强制Linux内核将其响应分段为多个TCP段,每个TCP段仅包含8个字节的数据。这大大增加了提供相同数据量所需的带宽。此外,它消耗额外的资源(CPU和NIC处理能力)。此攻击需要攻击者不断努力,攻击将在攻击者停止发送流量后立即结束。
修复建议
两个补丁PATCH_net_3_4.patch(https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-001/PATCH_net_3_4.patch)和PATCH_net_4_4.patch(https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-001/PATCH_net_4_4.patch)添加一个sysctl,它强制执行sysctl设置的最小MSS net.ipv4.tcp_min_snd_mss。这使管理员可以强制执行适合其应用程序的最小MSS。
解决方法
使用提供的过滤器之一阻止与低MSS的连接。(过滤器中的值是示例。您可以根据您的环境应用更高或更低的限制。)请注意,这些过滤器可能会破坏依赖于低MSS的合法连接。另请注意,此缓解仅在禁用TCP探测时有效。(即,net.ipv4.tcp_mtu_probingsysctl设置为0,这似乎是该sysctl的默认值)。


参考链接

[1].https://github.com/Netflix/security-bulletins/blob/master/advisories/third-party/2019-001.md
[2].https://www.openwall.com/lists/oss-security/2019/06/17/5
[3].https://access.redhat.com/security/vulnerabilities/tcpsack
时间轴

2019/06/17   
Netflix公司已经确定了几个TCP网络FreeBSD和Linux内核中的漏洞
2019/06/19   
某公司千里目安全实验室翻译并发布预警

发表新帖
热门标签
全部标签>
安全效果
西北区每日一问
技术盲盒
技术笔记
干货满满
【 社区to talk】
每日一问
信服课堂视频
GIF动图学习
新版本体验
技术咨询
2023技术争霸赛专题
功能体验
产品连连看
自助服务平台操作指引
标准化排查
秒懂零信任
技术晨报
安装部署配置
原创分享
排障笔记本
玩转零信任
排障那些事
SDP百科
技术争霸赛
深信服技术支持平台
通用技术
以战代练
升级&主动服务
社区新周刊
畅聊IT
答题自测
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
每日一记
运维工具
云计算知识
用户认证
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
产品预警公告
信服圈儿
S豆商城资讯
「智能机器人」
追光者计划
社区帮助指南
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
每周精选
2024年技术争霸赛
北京区每日一练
场景专题
故障笔记
高手请过招
高频问题集锦
POC测试案例
全能先锋系列
云化安全能力

本版达人

SANGFOR...

本周分享达人