Linux 底层函数库“glibc”再现重大安全漏洞,多个

本文发布时间: 2019-Mar-21
Google 的安全研究团队近日披露了glibc getaddrinfo 溢出漏洞。漏洞的详细发现过程可以参见Google的博客。(题外话,Google 的工程师都真牛)漏洞描述:漏洞成因在于DNS Server Response返回过量的(2048 ) 字节, 导致接下来的response 触发栈溢出。The vulnerability relies on an oversized (2048 bytes) UDP or TCP response, which is followed by another response that will overwrite the stack.影响范围:所有Debian 系列、Red Hat 系列的Linux 发行版,只要glibc 版本大于2.9 就会受到影响。目前Google 已提供了POC,据Google 博客中所述,该漏洞应该是可以绕过内存防护技术,从而形成代码执行漏洞。POC 使用测试POC 地址:github.com/fjserna/CVE-2015-7547我在自己的本地 lubuntu 上进行测试,libc 版本为 2.19。lubuntu系列也属于Debian 的一个发行版,故理论上满足漏洞条件。测试过程如下:根据漏洞描述,我们可以做一个假的DNS Server 作为中间人,来验证该漏洞。更改DNS 解析为 127.0.0.1,刷新DNS 缓存 sudo /etc/init.d/nscd restart 执行CVE-2015-7547-poc.py, 注意无需更改 ip_addr 。 编译CVE-2015-7547-client.c, 执行CVE-2015-7547-client若含有漏洞,会造成Segmentation Fault。由于gilbc 2.9 是在2008年发行的,所以大量Linux 系统都会受到该漏洞影响。若一旦绕过内存防护技术,则该漏洞可以成为一大杀器。被劫持的DNS server进行中间人攻击,可直接批量获取大量主机权限。修复方案:1) 打patch,可参考官方介绍参考文献:https://googleonlinesecurity.blogspot.ca/2016/02/cve-2015-7547-glibc-getaddrinfo-stack.html?m=1https://isc.sans.edu/diary/CVE-2015-7547: Critical Vulnerability in glibc getaddrinfo/20737


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2024-Mar-04 02:08pm
栏目列表