Linux Glibc漏洞在线更新

1. 漏洞背景

代码审计公司Qualys的研究人员在glibc库中的__nss_hostname_digits_dots()函数中发现了一个缓冲区溢出的漏洞,这个bug可以经过gethostbyname*()函数被本地或者远程的触发。

1)通过gethostbyname()函数或gethostbyname2()函数,将可能产生一个堆上的缓冲区溢出。经由gethostbyname_r()或gethostbyname2_r(),则会触发调用者提供的缓冲区溢出(理论上说,调用者提供的缓冲区可位于堆,栈,.data节和.bss节等。但是,我们实际操作时还没有看到这样的情况)。

2)漏洞产生时至多sizeof(char* )个字节可被覆盖(注意是char*指针的大小,即32位系统上为4个字节,64位系统为8个字节)。但是payload中只有数字( ‘0 ‘...‘ 9‘) ,点( “.”) ,和一个终止空字符(‘\0‘ ) 可用。

3)尽管有这些限制,我们依然可以执行任意的代码。

使用源代码方式升级 Glibc 是需要小心考虑的事情,因为整个系统几乎所有应用程序都依赖于原有的动态库,升级的时候,执行"make install"命令会打断旧的动态库链接,改为指向新的库文件。在这个过程中,不同的链接指向新旧不同版本的库文件,很容易导致系统崩溃,崩溃后,一般是无法重新启动的。

2. 影响范围

该漏洞影响glibc库版本2.2-2.17的Linux操作系统

操作系统类型包括

CentOS 6 & 7

Debian 7

Red Hat Enterprise Linux 6 & 7

Ubuntu 10.04 & 12.04

各Linux发行版

3. 漏洞测试

[[email protected]_GH_HA_Master ~]# ./ghost

vulnerable

[[email protected]_uat_s2 ~]# ./ghost

notvulnerable

4. 漏洞修复

更新是在glibc包中,但是这个库会被很多运行中的服务使用。在更新之后,每个服务都要重启一下。要找到所有依赖glibc的服务,请使用如下命令,它会显示所有打开的文件(lsof),然后找到引用glibc库的文件。

lsof | grep libc | awk ‘{print $1}‘ | sort | uniq

最安全的办法是重启所有上面用lsof找到的服务。也可以重启服务器。

建议CentOS  glibc在线更新,更新后下载离线包更新,优先升级对外开放的服务器。

时间: 2024-08-24 20:12:55

Linux Glibc漏洞在线更新的相关文章

阿里云服务器Linux Glibc漏洞补丁各个系统版本解决方案

我们在更新版本补丁之前,建议我们先备份数据库和网站,或者直接在阿里云面板后台用快照备份,一旦出错我们还可以回滚快照解决问题. 第一.CentOS 5/6/7系统: yum update glibc 第二.Ubuntu 12/14系统: apt-get updateapt-get install libc6 第三.Debian 6系统: wget -O /etc/apt/sources.list.d/debian6-lts.list http://mirrors.aliyun.com/repo/d

Linux Glibc幽灵漏洞紧急修补方案【转】

转自:http://blog.csdn.net/chen19870707/article/details/43560823 幽灵漏洞是Linux glibc库上出现的一个严重的安全问题,他可以让攻击者在不了解系统的任何情况下远程获取操作系统的控制权限.目前他的CVE编号为CVE-2015-0235. 什么是glibc glibc是GNU发布的libc库,即c运行库.glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc.glibc除了封装linux操作系统所提供的系统

关于阿里云ECS Centos 5/6/7 Linux Glibc库严重安全漏洞修复方法

日前Linux GNU glibc标准库的 gethostbyname函数爆出缓冲区溢出漏洞,漏洞编号为CVE-2015-0235.黑客可以通过gethostbyname系列函数实现远程代码执行,获取服务器的控制权及Shell权限,此漏洞触发途径多,影响范围大,请大家关注和及时临时修复.关于阿里云ECS Linux Glibc库严重安全漏洞修复方法.Centos 5/6/7:连接终端,或者putty登录首先检测目前的版本输入命令: rpm -qa | grep glibc 我的显示:glibc-

Linux Glibc幽灵漏洞紧急修补方案

推荐:10年技术力作:<高性能Linux服务器构建实战Ⅱ>全网发行,附试读章节和全书实例源码下载! 幽灵漏洞是Linux glibc库上出现的一个严重的安全问题,他可以让攻击者在不了解系统的任何情况下远程获取操作系统的控制权限.目前他的CVE编号为CVE-2015-0235. 什么是glibc glibc是GNU发布的libc库,即c运行库.glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc.glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了

Linux底层函数库glibc漏洞核查整改指引

# 一. **漏洞概要** 近日,Linux底层函数glibc 的 DNS 客户端解析器被发现存在基于栈的缓冲区溢出漏洞.攻击者可借助特制的域名. DNS 服务器或中间人攻击利用该漏洞执行任意代码,甚至控制整个系统. # 二. **漏洞原理** 攻击者可在恶意域名服务器创建恶意的DNS域名,诱骗用户访问查找恶意域名,并最终得到恶意服务器的 buffer-busting 响应.该域名被嵌入服务器日志中,一旦解析就会触发远程代码执行,SSH客户端也会因此被控制. glibc通过alloca()函数在

linux gcc++漏洞:普通用户获得root权限

linux gcc++漏洞:普通用户获得root权限 2012-02-06 10:22:38|  分类: linux安全|举报|字号 订阅   经我测试在RHEL5 / CentOS5 / FC13都成功了. 首先介绍下一下具体步骤中涉及到的2个频繁的出现的词语: taviso:作者 Tavis Ormandy 的简称,Google信息安全工程师 个人微博:http://my.opera.com/taviso/blog/ http://twitter.com/taviso exploit:自己创

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

尊敬的阿里云ECS用户: 您好,日前Linux GNU glibc标准库的 gethostbyname函数爆出缓冲区溢出漏洞,漏洞编号为CVE-2015-0235.黑客可以通过gethostbyname系列函数实现远程代码执行,获取服务器的控制权及Shell权限,此漏洞触发途径多,影响范围大,请大家关注和及时临时修复,后续我们会尽快更新镜像修复.请知晓. 一.    漏洞发布日期 2015年1月27日 二.    已确认被成功利用的软件及系统 Glibc 2.2到2.17 (包含2.2和2.17

linux glibc 安全漏洞 CVE-2015-7547 修复与检测方法

参考链接:http://toutiao.com/i6253272495634252289/ 漏洞信息:https://rhn.redhat.com/errata/RHSA-2016-0175.html 如下为具体操作方法:(在centos 6.5 环境下测试) ##################################################### 1. 如下为查看操作系统版本及glibc 版本[[email protected] ~]# cat /etc/redhat-rel

Linux 幽灵漏洞CVE 2015-0235 (glibc修补方案)

漏洞的危害: [CVE 2015-0235: GNU glibc gethostbyname 缓冲区溢出漏洞 ]全面爆发,该漏洞的产生是Qualys公司在进行内部代码审核时,发现了一个在GNU C库(glibc)中存在的__nss_hostname_digits_dots函数导致的缓冲区溢出漏洞.这个bug可以通过gethostbyname *()函数来触发,本地和远程均可行.该漏洞(幽灵漏洞)造成了远程代码执行,攻击者可以利用此漏洞获取系统的完全控制权. 检查系统是否存储幽灵漏洞: 将下面的代