緊急:GHOST CVE-2015-0235漏洞及緊急修復(fù)方法
來源:http://www.freebuf.com/news/57729.html
尊敬的客戶:
您好。以下文件非常重要,請(qǐng)各位認(rèn)真閱讀。
關(guān)于該漏洞
安全研究人員近日曝出一個(gè)名為幽靈(GHOST)的嚴(yán)重安全漏洞,這個(gè)漏洞可以允許攻擊者遠(yuǎn)程獲取操作系統(tǒng)的控制權(quán)限,影響市面上大量Linux操作系統(tǒng)及其發(fā)行版。該漏洞CVE編號(hào)為CVE-2015-0235。
什么是glibc
glibc是GNU發(fā)布的libc庫,即c運(yùn)行庫。glibc是linux系統(tǒng)中層的api,幾乎其它任何運(yùn)行庫都會(huì)依賴于glibc。glibc除了封裝linux操作系統(tǒng)所提供的系統(tǒng)服務(wù)外,它本身也提供了許多其它一些必要功能服務(wù)的實(shí)現(xiàn)。glibc囊括了幾乎所有的UNIX通行的標(biāo)準(zhǔn)。
漏洞概述
代碼審計(jì)公司Qualys的研究人員在glibc庫中的__nss_hostname_digits_dots()函數(shù)中發(fā)現(xiàn)了一個(gè)緩沖區(qū)溢出的漏洞,這個(gè)bug可以經(jīng)過gethostbyname*()函數(shù)被本地或者遠(yuǎn)程的觸發(fā)。
應(yīng)用程序主要使用gethostbyname*()函數(shù)發(fā)起DNS請(qǐng)求,這個(gè)函數(shù)會(huì)將主機(jī)名稱轉(zhuǎn)換為ip地址。
影響范圍
該漏洞影響glibc庫版本2.2-2.17的Linux操作系統(tǒng)
操作系統(tǒng)類型包括
CentOS 6 & 7
Debian 7
Red Hat Enterprise Linux 6 & 7
Ubuntu 10.04 & 12.04
各Linux發(fā)行版
漏洞測(cè)試
1、將以下代碼文件保存為文件,文件名為GHOST.c(注意嚴(yán)格區(qū)分字母大小寫)。
#include <netdb.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.h>
#include <gnu/libc-version.h>
#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("not vulnerable");
exit(EXIT_SUCCESS);
}
puts("should not happen");
exit(EXIT_FAILURE);
}
2、執(zhí)行以下命令,檢測(cè)是否存在漏洞
gcc GHOST.c -o GHOST
./GHOST

修復(fù)方案
執(zhí)行glibc升級(jí)命令
RH、Fedora、CentOS系統(tǒng)
yum install glibc && reboot
Debian、Ubuntu系統(tǒng)
apt-get clean && apt-get update && apt-get upgrade
小貼士:update之后,要重啟依賴glibc的進(jìn)程。
景安網(wǎng)絡(luò)
2015年1月30日



