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

简介:

幽灵漏洞是Linux glibc库上出现的一个严重的安全问题,他可以让攻击者在不了解系统的任何情况下远程获取操作系统的控制权限。目前他的CVE编号为CVE-2015-0235。


什么是glibc


glibc 是GNU发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装 linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现。glibc 囊括了几乎所有的 UNIX 通行的标准。


出现了什么漏洞


代 码审计公司Qualys的研究人员在glibc库中的__nss_hostname_digits_dots()函数中发现了一个缓冲区溢出的漏洞,这个 bug可以经过 gethostbyname*()函数被本地或者远程的触发。应用程序主要使用gethostbyname*()函数发起DNS请求,这个函数会将主机名 称转换为ip地址。


漏洞危害


这个漏洞造成了远程代码执行,攻击者可以利用此漏洞获取系统的完全控制权。


漏洞证明


在我们的测试中,我们编写了一个POC,当我们发送一封精心构造的电子邮件给服务器后,我们便可以获得远程Linux服务器的shell,这绕过了目前在32位和64位系统的所有保护(如ASLR,PIE和NX)。


我们能做什么?


给操作系统及时打补丁,我们(Qualys)已与Linux发行商紧密合作,会及时发布补丁。


为什么叫做GHOST?


因为他通过GetHOST函数触发。


哪些版本和操作系统受影响?


第 一个受影响的版本是GNU C库的glibc-2.2,2000年11月10号发布。我们已找出多种可以减轻漏洞的方式。我们发现他在2013年5月21号(在glibc-2.17 和glibc-2.18发布之间)已经修复。不幸的是他们不认为这是个安全漏洞。从而导致许多稳定版本和长期版本暴露在外,其中包括Debian 7 (wheezy),Red Hat Enterprise,Linux 6 & 7,CentOS 6 & 7,Ubuntu 12.04等


修复方案


升级glibc库: 


    RHEL/CentOS : sudo yum update glibc 


    Ubuntu : sudo apt-get update ; sudo apt-get install libc6


漏洞测试方法:


 wget https://webshare.uchicago.edu/orgs/ITServices/itsec/Downloads/GHOST.c

# OR

wget -O GHOST.c https://gist.githubusercontent.com/koelling/ef9b2b9d0be6d6dbab63/raw/de1730049198c64eaf8f8ab015a3c8b23b63fd34/gistfile1.c

 

 编译:

 gcc -o GHOST GHOST.c


 执行:

 ./GHOST


 如果输出:

 [root@localhost home]# ./GHOST 

not vulnerable


表示漏洞已经修复,如果仅输出“vulnerable”字样,表示漏洞依然存在。



脚本测试漏洞


wget -O GHOST-test.sh http://www.cyberciti.biz/files/scripts/GHOST-test.sh.txt

bash GHOST-test.sh

[root@localhost ~]# bash GHOST-test.sh

Vulnerable glibc version <= 2.17-54

Vulnerable glibc version <= 2.5-122

Vulnerable glibc version <= 2.12-1.148

Detected glibc version 2.12 revision 149

Not Vulnerable.



本文转自pizibaidu 51CTO博客,原文链接:http://blog.51cto.com/pizibaidu/1612370,如需转载请自行联系原作者
相关文章
|
安全 Linux 网络安全
Linux脏牛漏洞提权复现
操作系统: Linux ( CentOS 6.5) Web服务: PHP+Apache
570 0
Linux脏牛漏洞提权复现
|
安全 测试技术 Linux
|
9天前
|
Linux 网络安全 Python
linux后台运行命令screen的使用
linux后台运行命令screen的使用
42 2
linux后台运行命令screen的使用
|
9天前
|
Ubuntu Linux
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
112 3
|
15天前
|
存储 监控 安全
在Linux中,⼀个EXT3的文件分区,当使用touch test.file命令创建⼀个新文件时报错,报错的信息是提示磁盘已满,但是采用df -h命令查看磁盘大小时,只使用了,60%的磁盘空间,为什么会出现这个情况?
在Linux中,⼀个EXT3的文件分区,当使用touch test.file命令创建⼀个新文件时报错,报错的信息是提示磁盘已满,但是采用df -h命令查看磁盘大小时,只使用了,60%的磁盘空间,为什么会出现这个情况?
|
5天前
|
机器学习/深度学习 安全 网络协议
Linux防火墙iptables命令管理入门
本文介绍了关于Linux防火墙iptables命令管理入门的教程,涵盖了iptables的基本概念、语法格式、常用参数、基础查询操作以及链和规则管理等内容。
158 73
|
3天前
|
Linux 应用服务中间件 nginx
|
3天前
|
Ubuntu Linux Shell
Linux系统命令 安装和文件相关命令
本文档详细介绍了Linux系统中的常用命令,包括软件安装卸载命令如`dpkg`和`apt-get`,压缩与解压命令如`gzip`、`bzip2`和`xz`,以及`tar`命令用于打包和解包。此外还介绍了文件分割命令`split`,文件操作命令如`cat`、`head`、`tail`、`more`、`less`等,管道命令和`wc`、`grep`、`find`、`cut`、`sort`、`uniq`、`diff`等实用工具。最后,文档还讲解了文件属性相关的命令如`chmod`、`chown`、`chgrp`以及创建硬链接和软链接的`ln`命令。
下一篇
DDNS