参考http://www.linuxidc.com/Linux/2015-04/116472.htm via 红孩儿你好


一、简介

glibc是gnu发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现。
同时,错误地升级glibc将会毁掉一个系统(以至于无法登录)。初学Linux时,通过网上其他教程装毁的Linux不下十台,这里找到一个靠谱的,通过升级glibc到2.15版得出的升级方法。

二、过程

1、下载glibc,解压

原文中的glibc-ports是用来支持arm架构芯片的包,可以将包内文件移动到glibc-2.15/ports内编译安装,这里不再赘述

wget http://ftp.gnu.org/gnu/glibc/glibc-2.15.tar.gz
tar -zxvf glibc-2.15.tar.gz

2、准备一个编译文件夹

mkdir glibc-2.15-build
cd glibc-2.15-build

3、配置configure

../glibc-2.15/configure  --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin

4、编译安装

make
make install

顺便说一下,make的-j参数是个坑,虽然可以并行编译,但如果Makefile或依赖关系有问题,编译会出错。

5、检查软连接

编译成功后,glibc-2.15-build文件下会生成一个新的libc.so.6,这是一个软连接,而真实的lib文件是此目录下的libc.so。ll是ls -l的别名

ll libc.so.

查看库文件

ll /lib64/libc*

可以看到2.12的旧库文件还在,多了2.15版本的库文件,而且软链接文件全部指向了2.15版本

查看glibc支持的版本

strings libc.so | grep GLIBC

6、漏洞影响

Google的安全研究团队近日披露了一个关于glibc中getaddrinfo函数的溢出漏洞。漏洞成因在于DNS Server Response返回过量的(2048)字节,会导致接下来的response触发栈溢出。(CVE-2015-7547)。
攻击者可借助特制的域名、DNS服务器或中间人攻击利用该漏洞,控制软件,并试图控制整个系统。
对于Debian系列、Red Hat系列的Linux发行版,只要glibc版本大于2.9就会受到影响。

地址:https://sourceware.org/bugzilla/show_bug.cgi?id=18665

官方的补救策略也很恶心:https://sourceware.org/ml/libc-alpha/2016-02/msg00416.html

个人的解决办法:使用安全靠谱的“大厂”的DNS服务器

最新文章

  1. JS事件-让网页交互
  2. [No00003A]操作系统Operating Systems 内核级线程Kernel Threads内核级线程实现Create KernelThreads
  3. 【Mongodb】3.X 配置身份验证
  4. SequoiaDB 系列之七 :源码分析之catalog节点
  5. G面经prepare: BuyGoods
  6. FireFox 一键清理缓存
  7. Python 中使用optparse进行参数解析
  8. addChildViewController 与 addSubview
  9. 浅谈 qmake 之 shadow build(就是将源码路径和构建路径分开)
  10. 关于requirejs中的define的原理理解
  11. axis1.4开发webservice服务端(快速入门)-基于jdk1.4
  12. Spring集成RabbitMQ-使用RabbitMQ更方便
  13. 通读cheerio API ——NodeJs中的jquery
  14. 解决beego中同时开启http和https时,https端口占用问题
  15. HttpWebRequest请求http1.1的chunked的解析问题记录
  16. iOS SDK开发汇总
  17. Session会话与Cookie简单说明
  18. FileFilter文件过滤器
  19. 探究 encode 和 decode 的使用问题(Python)
  20. IDEA里点击Build,再Build Artifacts没反应,灰色的?解决办法(图文详解)

热门文章

  1. CSS控制文本超出后隐藏并用省略号代替
  2. IS_EER分析
  3. 青铜器RDM全面支持CMMI、GJB5000A L2~L5认证评估
  4. IP地址爬取
  5. spring mvc在普通类中获取HttpServletRequest对象
  6. 目标指向、Icon图标的错误
  7. 优化算法-BFGS
  8. poj2236无线网络
  9. jQuery实现table隔行换色和鼠标经过变色
  10. C++ Config 配置文件类