Linux Glibc库严重安全漏洞修复通知 (重要)

短信通知:

image

论坛的修复方案:
尊敬的阿里云ECS用户:

您好,日前Linux GNU glibc标准库的 gethostbyname函数爆出缓冲区溢出漏洞,漏洞编号为CVE-2015-0235。黑客可以通过gethostbyname系列函数实现远程代码执行,获取服务器的控制权及Shell权限,此漏洞触发途径多,影响范围大,请大家关注和及时临时修复,后续我们会尽快更新镜像修复。请知晓。

一、    漏洞发布日期 
2015年1月27日 

二、    已确认被成功利用的软件及系统 
Glibc 2.2到2.17 (包含2.2和2.17版本) 

三、    漏洞描述 
GNU glibc标准库的gethostbyname 函数爆出缓冲区溢出漏洞,漏洞编号:CVE-2015-0235。 Glibc 是提供系统调用和基本函数的 C 库,比如open, malloc, printf等等。所有动态连接的程序都要用到Glibc。远程攻击者可以利用这个漏洞执行任意代码并提升运行应用程序的用户的权限。 

四、    漏洞检测方法 

按照说明操作即可。
#include   
#include   
#include   
#include   
#include   
#define CANARY “in_the_coal_mine”
struct {  
  char buffer[1024];  
  char canary[sizeof(CANARY)];  
} temp = { “buffer”, CANARY };  
int main(void) {  
  struct hostent resbuf;  
  struct hostent *result;  
  int herrno;  
  int retval;  
  /*** strlen (name) = size_needed -sizeof (*host_addr) – sizeof (*h_addr_ptrs) – 1; ***/  
  size_t len = sizeof(temp.buffer) -16*sizeof(unsigned char) – 2*sizeof(char *) – 1;  
  char name[sizeof(temp.buffer)];  
  memset(name, ‘0’, len);  
  name[len] = ‘\0’;  
  retval = gethostbyname_r(name,&resbuf, temp.buffer, sizeof(temp.buffer), &result, &herrno);  
  if (strcmp(temp.canary, CANARY) !=0) {  
    puts(“vulnerable”);  
    exit(EXIT_SUCCESS);  
  }  
  if (retval == ERANGE) {  
    puts(“notvulnerable”);  
    exit(EXIT_SUCCESS);  
  }  
  puts(“should nothappen”);  
  exit(EXIT_FAILURE);  
}

将上述代码内容保存为GHOST.c
执行gcc GHOST.c -o GHOST

$./GHOST  
vulnerable
表示存在漏洞,需要进行修复。

$./GHOST  
notvulnerable
表示修复成功。

五、    建议修补方案 

特别提示:由于glibc属于Linux系统基础组件,为了避免修补对您服务器造成影响,建议您选择合适时间进行修复,同时务必在修复前通过快照操作进行备份,如果修复出现问题,可以迅速回滚快照恢复。

Centos 5/6/7:

yum update glibc

Ubuntu 12/14
apt-get update
apt-get install libc6

Debian 6

wget -O /etc/apt/sources.list.d/debian6-lts.list http://mirrors.aliyun.com/repo/debian6-lts.list
apt-get update
apt-get install libc6

Debian 7

apt-get update
apt-get install libc6

Opensuse 13

zypper refresh
zypper update glibc*

Aliyun linux 5u7

wget -O /etc/yum.repos.d/aliyun-5.repo http://mirrors.aliyun.com/repo/aliyun-5.repo 
yum update glibc

阿里云ECS团队
2014年1月29日

[ 此帖被qilu在2015-01-30 19:15重新编辑 ]
分享到淘江湖新浪QQ微博QQ空间开心人人豆瓣网易微博百度鲜果白社会飞信
回复引用举报

geiliveble
级别: 菜鸟 
发帖95
云币121
加关注
写私信
只看该作者 沙发  发表于: 昨天 17:34
ReLinuxGlibc库严重安全漏洞修复通知(重要)
有的忙了。。。。
回复引用举报

ballpen
级别: 菜鸟 
发帖81
云币27
加关注
写私信
只看该作者 板凳  发表于: 昨天 17:36
Re回楼主qilu的帖子
阿里的方案终于出来了 

网上的这些方法 请问是否适合阿里云?

OS:CentOS 和 RedHat  更新方法如下:
1)用户使用root用户, 在系统上执行: #yum clean all; yum update glibc
2)以上命令执行完成后,
查看Glibc版本:# rpm –qa|grep glibc-2.12 (跟右侧对应glibc版本对应的话,说明修复成功)                               
 
OS版本
 
对应Glibc版本
CentOS6.x/redhat6.x
glibc-2.12-1.149.el6_6.5
OS版本: CentOS 6.2 安全版(tlinux)
glibc-2.12-1.149.tl1.5
CentOS5.x/redhat5.x
glibc-2.5-123.el5_11.1

OS: Ubuntu 更新方法如下:【针对Ubuntu,腾讯云软件仓库已完成同步】
1)用户使用root权限登录系统或使用sudo获取root权限,执行以下命令:#apt-get update#apt-get install libc6
2)执行完成以后,查看版本, 输出如下表示更新完成:root@VM-ubuntu:~# dpkg -l|grep libc6
 
OS版本
 
对应Glibc版本
Ubuntu12.x
2.15-0ubuntu10.10
Ubuntu14.x
2.19-0ubuntu6
Ubuntu10.x
–来自阿里云的修复通知。
2.11.1-0ubuntu7.20

Author: bkdwei