设为首页 收藏本站
查看: 444|回复: 0

[经验分享] linux glibc 安全漏洞 CVE-2015-7547 修复与检测方法

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-3-2 08:58:28 | 显示全部楼层 |阅读模式
漏洞信息:https://rhn.redhat.com/errata/RHSA-2016-0175.html
如下为具体操作方法:(在centos 6.5 环境下测试)
#####################################################
1. 如下为查看操作系统版本及glibc 版本
[iyunv@localhost ~]# cat /etc/redhat-release
CentOS release 6.5 (Final)
[iyunv@localhost ~]# uname -r
2.6.32-431.el6.x86_64
[iyunv@localhost ~]# uname -a
64 GNU/Linux
[iyunv@localhost ~]# cat /etc/resolv.conf
; generated by /sbin/dhclient-script
nameserver 127.0.0.1
[iyunv@localhost ~]# ls
anaconda-ks.cfg                                       Music
atomic-php55-php-cli-5.5.31-31.el6.art.x86_64.rpm     nginx-1.8.0
atomic-php55-php-common-5.5.31-31.el6.art.x86_64.rpm  nginx-1.8.0.tar.gz
atomic-php55-php-devel-5.5.31-31.el6.art.x86_64.rpm   php-5.5.31
CVE-2015-7547-master                                  php-5.5.31.tar.bz2
Desktop                                               Pictures
Documents                                             Public
Downloads                                             rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
eaccelerator-master                                   Templates
install.log                                           Videos
install.log.syslog                                    wordpress
master.zip                                            wordpress-4.4.1-zh_CN.tar.gz
[iyunv@localhost glibc2.12.166]# rpm -qa | grep -i glibc
glibc-devel-2.12-1.132.el6.x86_64
glibc-common-2.12-1.132.el6.x86_64
glibc-2.12-1.132.el6.x86_64
glibc-headers-2.12-1.132.el6.x86_64
#####################################################
2. 下载CVE-2015-7547 ,解压后的文件如下:
[iyunv@localhost ~]# cd CVE-2015-7547-master/
[iyunv@localhost CVE-2015-7547-master]# ls
CVE-2015-7547-client.c  CVE-2015-7547-poc.py  LICENSE  Makefile  README
#下载后 执行 python CVE-2015-7547-poc.py (此步大概要等10多分钟才出现信息)
[iyunv@localhost CVE-2015-7547-master]# python CVE-2015-7547-poc.py
[UDP] Total Data len recv 44
[UDP] Total Data len recv 44
Connected with 127.0.0.1:47403
[TCP] Total Data len recv 46
[TCP] Request1 len recv 44
[UDP] Total Data len recv 44
[UDP] Total Data len recv 44
Connected with 127.0.0.1:47404
[TCP] Total Data len recv 46
[TCP] Request1 len recv 44
[UDP] Total Data len recv 36
[UDP] Total Data len recv 36
Connected with 127.0.0.1:47405
[TCP] Total Data len recv 76
[TCP] Request1 len recv 36
[TCP] Request2 len recv 36
[UDP] Total Data len recv 44
[UDP] Total Data len recv 44
Connected with 127.0.0.1:47409
[TCP] Total Data len recv 46
[TCP] Request1 len recv 44
[UDP] Total Data len recv 44
[UDP] Total Data len recv 44
Connected with 127.0.0.1:47410
[TCP] Total Data len recv 46
[TCP] Request1 len recv 44
[UDP] Total Data len recv 39
[UDP] Total Data len recv 39
Connected with 127.0.0.1:47411
[TCP] Total Data len recv 82
[TCP] Request1 len recv 39
[TCP] Request2 len recv 39
^CTraceback (most recent call last):
  File "CVE-2015-7547-poc.py", line 176, in <module>
    tcp_thread()
  File "CVE-2015-7547-poc.py", line 105, in tcp_thread
    conn, addr = sock_tcp.accept()
  File "/usr/lib64/python2.6/socket.py", line 197, in accept
    sock, addr = self._sock.accept()
KeyboardInterrupt
##########################################################
3. 在linux另一个窗口编译 gcc CVE-2015-7547-client.c -o client
[iyunv@localhost ~]# cd CVE-2015-7547-master/
[iyunv@localhost CVE-2015-7547-master]# ll
total 32
-rw-r--r-- 1 root root   967 Mar  1 09:29 CVE-2015-7547-client.c
-rw-r--r-- 1 root root  4638 Mar  1 09:29 CVE-2015-7547-poc.py
-rw-r--r-- 1 root root 11357 Mar  1 09:29 LICENSE
-rw-r--r-- 1 root root   109 Mar  1 09:29 Makefile
-rw-r--r-- 1 root root   936 Mar  1 09:29 README
[iyunv@localhost CVE-2015-7547-master]# ls
CVE-2015-7547-client.c  CVE-2015-7547-poc.py  LICENSE  Makefile  README
[iyunv@localhost CVE-2015-7547-master]# gcc CVE-2015-7547-client.c -o client
[iyunv@localhost CVE-2015-7547-master]# ls
client  CVE-2015-7547-client.c  CVE-2015-7547-poc.py  LICENSE  Makefile  README
[iyunv@localhost CVE-2015-7547-master]# ./client
Segmentation fault (core dumped)
[iyunv@localhost CVE-2015-7547-master]#
执行 ./client 文件
如果返回 段错误(Segmentation fault)  有漏洞
如果返回 client: getaddrinfo: Name or service not known 漏洞已修复
###############################################################
4. 更新glibc ,下载glibc 相关的rpm包
[iyunv@localhost ~]# ls
anaconda-ks.cfg                                       Music
atomic-php55-php-cli-5.5.31-31.el6.art.x86_64.rpm     nginx-1.8.0
atomic-php55-php-common-5.5.31-31.el6.art.x86_64.rpm  nginx-1.8.0.tar.gz
atomic-php55-php-devel-5.5.31-31.el6.art.x86_64.rpm   php-5.5.31
CVE-2015-7547-master                                  php-5.5.31.tar.bz2
Desktop                                               Pictures
Documents                                             Public
Downloads                                             rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
eaccelerator-master                                   Templates
glibc2.12.166                                         Videos
install.log                                           wordpress
install.log.syslog                                    wordpress-4.4.1-zh_CN.tar.gz
master.zip
[iyunv@localhost ~]# cd glibc2.12.166/
#########################################################################
###############如下为glibc更新的rpm包#####################
[iyunv@localhost glibc2.12.166]# ls
glibc-2.12-1.166.el6_7.7.i686.rpm           glibc-headers-2.12-1.166.el6_7.7.x86_64.rpm
glibc-2.12-1.166.el6_7.7.x86_64.rpm         glibc-static-2.12-1.166.el6_7.7.x86_64.rpm
glibc-common-2.12-1.166.el6_7.7.x86_64.rpm  glibc-utils-2.12-1.166.el6_7.7.x86_64.rpm
glibc-devel-2.12-1.166.el6_7.7.x86_64.rpm
###########强制安装rpm包###############################
[iyunv@localhost glibc2.12.166]# rpm -Uvh --nodeps --force glibc-*
Preparing...                ########################################### [100%]
   1:glibc-common           ########################################### [ 14%]
   2:glibc                  ########################################### [ 29%]
   3:glibc-headers          ########################################### [ 43%]
   4:glibc-devel            ########################################### [ 57%]
   5:glibc-static           ########################################### [ 71%]
   6:glibc-utils            ########################################### [ 86%]
   7:glibc                  ########################################### [100%]
#######更新后查询glibc版本####################
[iyunv@localhost glibc2.12.166]# rpm -qa | grep -i glibc
glibc-static-2.12-1.166.el6_7.7.x86_64
glibc-headers-2.12-1.166.el6_7.7.x86_64
glibc-2.12-1.166.el6_7.7.i686
glibc-2.12-1.166.el6_7.7.x86_64
glibc-utils-2.12-1.166.el6_7.7.x86_64
glibc-common-2.12-1.166.el6_7.7.x86_64
glibc-devel-2.12-1.166.el6_7.7.x86_64
[iyunv@localhost glibc2.12.166]#
reboot重启服务器
##################################################################################
3. 使用第2步的方法检测是否还有漏洞
[iyunv@localhost ~]# ls
anaconda-ks.cfg                                       Music
atomic-php55-php-cli-5.5.31-31.el6.art.x86_64.rpm     nginx-1.8.0
atomic-php55-php-common-5.5.31-31.el6.art.x86_64.rpm  nginx-1.8.0.tar.gz
atomic-php55-php-devel-5.5.31-31.el6.art.x86_64.rpm   php-5.5.31
CVE-2015-7547-master                                  php-5.5.31.tar.bz2
Desktop                                               Pictures
Documents                                             Public
Downloads                                             rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
eaccelerator-master                                   Templates
glibc2.12.166                                         Videos
install.log                                           wordpress
install.log.syslog                                    wordpress-4.4.1-zh_CN.tar.gz
master.zip
[iyunv@localhost ~]# cd CVE-2015-7547-master/
[iyunv@localhost CVE-2015-7547-master]# ls
CVE-2015-7547-client.c  CVE-2015-7547-poc.py  LICENSE  Makefile  README
[iyunv@localhost CVE-2015-7547-master]# py
pydoc       pygtk-demo  python      python2     python2.6   
[iyunv@localhost CVE-2015-7547-master]# python CVE-2015-7547-poc.py
[UDP] Total Data len recv 44
[UDP] Total Data len recv 44
Connected with 127.0.0.1:34043
[TCP] Total Data len recv 46
[TCP] Request1 len recv 44
[UDP] Total Data len recv 44
[UDP] Total Data len recv 44
Connected with 127.0.0.1:34044
[TCP] Total Data len recv 46
[TCP] Request1 len recv 44
[UDP] Total Data len recv 44
[UDP] Total Data len recv 44
Connected with 127.0.0.1:34045
[TCP] Total Data len recv 46
[TCP] Request1 len recv 44
[UDP] Total Data len recv 44
[UDP] Total Data len recv 44
Connected with 127.0.0.1:34046
[TCP] Total Data len recv 46
[TCP] Request1 len recv 44
[UDP] Total Data len recv 36
[UDP] Total Data len recv 36
Connected with 127.0.0.1:34047
[TCP] Total Data len recv 76
[TCP] Request1 len recv 36
[TCP] Request2 len recv 36
^CTraceback (most recent call last):
  File "CVE-2015-7547-poc.py", line 176, in <module>
    tcp_thread()
  File "CVE-2015-7547-poc.py", line 105, in tcp_thread
    conn, addr = sock_tcp.accept()
  File "/usr/lib64/python2.6/socket.py", line 197, in accept
    sock, addr = self._sock.accept()
KeyboardInterrupt

[iyunv@localhost ~]# cd CVE-2015-7547-master/
[iyunv@localhost CVE-2015-7547-master]# ls
CVE-2015-7547-client.c  CVE-2015-7547-poc.py  LICENSE  Makefile  README
[iyunv@localhost CVE-2015-7547-master]# gcc CVE-2015-7547-client.c -o client
[iyunv@localhost CVE-2015-7547-master]# ls
client  CVE-2015-7547-client.c  CVE-2015-7547-poc.py  LICENSE  Makefile  README
[iyunv@localhost CVE-2015-7547-master]# ./client
client: getaddrinfo: Name or service not known
如果返回 client: getaddrinfo: Name or service not known 漏洞已修复


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-185178-1-1.html 上篇帖子: CentOS YUM / RPM Error Signature Key ID BAD 下篇帖子: Linux下Mysql安装_问题_解决 linux 检测 修复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表