BLSA-2016:0063 - [重要] kernel 安全警告及修复方法



  • BLSA-2016:0063 - [重要] kernel 安全警告及修复方法

    问题描述

    一般来说,互联网上任意两台主机设备是否建立TCP连接,网络攻击者如果不在双方的通讯路径中,是无法进行确认的,更无法中断甚至篡改这种连接。最近,Linux设备之间TCP连接曝高危漏洞:攻击者不需要处在通讯路径中,就可以利用该漏洞来确认互联网上的任意两台主机是否通过TCP连接进行通讯(并发现端口号),以及推测出TCP报文头的序列号(sequence number),进而能强制终止双方的TCP连接,甚至在连接中插入恶意payload;通过该漏洞还可以针对SSH、Tor之类的加密服务进行重置,以及DoS攻击

    在TCP连接的设计中,以前内核版本的Linux系统严格遵守了RFC 5961标准(具体给出了两台主机设备间建立TCP通讯的一些规定,加强安全性),而RFC 5961的实施被发现存在弱点,所以现在存在漏洞风险。此次发布漏洞危害极大,Linux内核版本在v3.6至v4.7之间的系统都受到影响。强烈建议所有 BCLinux 用户都安装 BCLinux 提供的升级包,升级包包含了修复这个漏洞的补丁文件。

    TCP简介
    TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。在因特网协议族(Internet protocol suite)中,TCP层是位于IP层之上,应用层之下的中间层。TCP连接包括三个状态:连接创建、数据传送和连接终止。操作系统将TCP连接抽象为套接字的编程接口给程序使用,并且要经历一系列的状态改变。
    三次握手简介
    TCP用三次握手(three-way handshake)过程创建一个连接。当主动方发出SYN连接请求后,等待对方回答SYN+ACK,并最终对对方的 SYN 执行 ACK 确认。三次握手完成,TCP客户端和服务器端成功地建立连接,可以开始传输数据了。

    payload简介
    病毒通常会做一些有害的或者恶性的动作。在病毒代码中实现这个功能的部分叫做“有效负载”(payload)。payload可以实现任何运行在受害者环境中的程序所能做的事情,并且能够执行动作包括破坏文件删除文件,向病毒的作者或者任意的接收者发送敏感信息,以及提供通向被感染计算机的后门。

    影响版本

    • BigCloud Enterprise Linux 7
    • Red Hat Enterprise Linux 7
    • CentOS Linux 7

    详细描述

    • CVE-2016-5696
      在Linux Kernel 4.7版本之前,net/ipv4/tcp_input.c无法确定ACK段的速率,而这容易让攻击者通过盲目窗口进攻来劫持TCP会话。
    • BZ#1354708
      Linux内核在处理网络challenge ACK 时,攻击者能够获取用于确定TCP序列号的共享的计数器。

    解决方案

    目前,BCLinux 的官方源已经提供了 kernel 更新软件包,BCLinux 7上的版本: 3.10.0-327.28.3 ,更新方法:
    1.检查YUM源设置,确保使用的是 BCLinux 官方 YUM 源

    [root@BCLinux ~]# ls -l /etc/yum.repos.d/
    total 24  
    -rw-r--r-- 1 root root 1038 Mar 10 04:46 BCLinux-Base.repo  
    -rw-r--r-- 1 root root 1053 Oct 19 21:18 BCLinux-Source.repo  
    -rw-r--r-- 1 root root 1184 Oct 19 21:18 BigCloud.repo
    

    2.安装更新

    [root@BCLinux ~]# yum update kernel
    Loaded plugins: fastestmirror
    Loading mirror speeds from cached hostfile
    Resolving Dependencies
    --> Running transaction check
    ---> Package kernel.x86_64 0:3.10.0-327.28.3.el7 will be installed
    --> Finished Dependency Resolution
    Dependencies Resolved
    =================================================================================
     Package       Arch          Version                        Repository      Size
    =================================================================================
    Installing:
     kernel        x86_64        3.10.0-327.28.3.el7          product         33 M
    Transaction Summary
    =================================================================================
    Install  1 Package   
    

    3.复查

    [root@BCLinux ~]# rpm -qa | grep kernel
    kernel-3.10.0-327.28.3.el7.x86_64.rpm
    

    4.重启
    安装升级内核,需要重启机器。

    外部链接

    1. BCLinux安全更新

登录后回复
 

与 BC-LINUX 的连接断开,我们正在尝试重连,请耐心等待