[linux] Upgrading glibc for the GHOST Vulnerability

1> Test if the problem exists, code:

    

#include <netdb.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <errno.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> 编译测试代码

    gcc code.c -o testGhost

    ./testGhost

    vulnerable  or  not vulnerable

3> 升级

    yum clean all 

    yum update

时间: 2024-07-30 19:47:09

[linux] Upgrading glibc for the GHOST Vulnerability的相关文章

Linux升级Glibc

一.简介 glibc是gnu发布的libc库,即c运行库.glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc.glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现... 本文介绍Glibc升级方法,参考:http://www.cppblog.com/prayer/archive/2009/07/22/90836.html 二.升级 步骤如下: wget http://ftp.gnu.org/gnu/glibc/gli

Linux系统glibc库版本信息查看

原文链接:http://www.jbxue.com/LINUXjishu/29946.html 1. CentOS /lib/i386-linux-gnu/libc.so.6 或 rpm -qi glibc 或 ls -l /lib/libc.so.6 2. Ubuntu ls -l /lib/i386-linux-gnu/libc.so.6 (32bit) ls -l /lib/x86_64-linux-gnu/libc.so.6(64bit) 或 apt-cache show libc6 3

【linux】glibc升级

glibc升级 步骤如下: 1.下载解压glibc wget http://ftp.gnu.org/gnu/glibc/glibc-2.18.tar.gz tar zxvf glibc-2.18.tar.gz cd glibc-2.18 2.编译安装 mkdir build cd build/ ../configure --prefix=/usr make -j4 make install 3.验证是否安装成功 [[email protected] build]# strings /lib64/

[分享]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库严重安全漏洞检测与修复方案

2015年1月27日 Linux GNU glibc标准库的 gethostbyname函数爆出缓冲区溢出漏洞,漏洞编号为CVE-2015-0235.黑客可以通过gethostbyname系列函数实现远程代码执行,获取服务器的控制权及 Shell 权限,此漏洞触发途径多,影响范围大,已确认被成功利用的软件及系统:Glibc 2.2到2.17 (包含2.2和2.17版本). GNU glibc标准库的gethostbyname 函数爆出缓冲区溢出漏洞,漏洞编号:CVE-2015-0235. Gli

关于阿里云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-

glibc升级小记

2015年元月最后几天,glibc幽灵漏洞来袭,引用 中华财经网的报道 稍做介绍: Linux glibc函数库日前曝出名为GHOST(幽灵)的高危漏洞,漏洞编号是CVE-2015-0235.攻击者可利用此漏洞实施远程攻击,并完全控制目标系统.据360网络攻防实验室介绍,各大Linux发行商已经发布漏洞补丁,提醒企业网管做好服务器的安全更新. Glibc是GNU发布的libc库,即c运行库.它是Linux系统中最底层的API,几乎其它任何运行库都会依赖于glibc.glibc除了封装Linux操

Linux安装mysql

——@梁WP 摘要:Linux安装mysql. 一.下载mysql 1.在百度搜索mysql,看到其中有一条结果是带有MySQL Downloads字样的,点击进入mysql的官网. 2.进入mysql官网之后,在下面能见到MySQL Community Edition (GPL),点击下面的链接,就会进入下载列表. 3.在下载列表找到MySQL Community Server,点击下面的链接,会进入产品选择页面. 4.选择对应的操作系统,然后选择合适的版本(.gz格式),截图选了Linux 

Linux基础之文件系统及基本命令

Linux文件系统: Linux:glibc(glibc是GNU发布的libc库,即c运行库.glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc) 程序编译方式: 动态链接 静态编译 进程的类型: 终端:硬件设备,关联一个用户接口 与终端相关:通过终端启动 与终端无关:操作引导启动过程当中自动启动 操作系统的组成: 静态:kernel, application 文件系统:层级结构 FHS: Filesystem Hierarchy Standard /bin:所有