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

原创
安全 漏洞 应用安全
近日,Google 的安全研究团队披露了glibc getaddrinfo溢出漏洞。经研究发现,所有Debian、Red Hat以及更多其它Linux发行版,只要glibc版本大于2.9就会受到该溢出漏洞影响。攻击者可以通过该漏洞直接批量获取大量主机权限。

近日,Google 的安全研究团队披露了glibc getaddrinfo溢出漏洞。经研究发现,所有Debian、Red Hat以及更多其它Linux发行版,只要glibc版本大于2.9就会受到该溢出漏洞影响。攻击者可以通过该漏洞直接批量获取大量主机权限。

[[162899]]

关于漏洞的详细发现过程,请移步Google的博客

百科:glibc是什么?

glibc是GNU发布的libc库,即c运行库。glibc是linux系统中最底层的api,几乎其它任何运行库都会依赖于glibc。glibc除了封装linux操作系统所提供的系统服务外,它本身也提供了许多其它一些必要功能服务的实现。由于 glibc 囊括了几乎所有的 UNIX 通行的标准,可以想见其内容包罗万象。而就像其他的 UNIX 系统一样,其内含的档案群分散于系统的树状目录结构中,像一个支架一般撑起整个操作系统。在GNU/Linux 系统中,其C函式库发展史点出了GNU/Linux 演进的几个重要里程碑,用 glibc 作为系统的C函式库,是GNU/Linux演进的一个重要里程碑。

漏洞的成因及POC使用测试 

据悉,漏洞的成因在于DNS Server Response返回过量的(2048 ) 字节, 导致接下来的response 触发栈溢出。

目前,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进行中间人攻击,可直接批量获取大量主机权限。

修复方案: 打patch,详见官方介绍

如何检查Linux上的glibc版本

方法一:

下面给出了命令行下检查GNU C库的简单命令。

$ ldd --version

如何检查Linux上的glibc版本 

方法二:

另一个方法是在命令行“输入”glibc 库的名称(如,libc.so.6),就像命令一样执行。

输出结果会显示更多关于glibc库的详细信息,包括glibc的版本以及使用的GNU编译器,也提供了glibc扩展的信息。glibc变量的位置取决于Linux版本和处理器架构。

在基于Debian的64位系统上:

$ /lib/x86_64-linux-gnu/libc.so.6

在基于Debian的32位系统上:

$ /lib/i386-linux-gnu/libc.so.6

在基于Red Hat的64位系统上:

$ /lib64/libc.so.6

在基于Red Hat的32位系统上:

$ /lib/libc.so.6

下图中是输入glibc库后的输出结果样例。

如何检查Linux上的glibc版本

写在最后

 小编建议广大用户尽快给操作系统打补丁,并且提醒管理员在修补漏洞的同时,千万不要忘记查看服务器或网站是否已经被入侵,是否存在后门文件等,尽量将损失和风险控制在可控范围内。

参考文献:

https://googleonlinesecurity.blogspot.ca/2016/02/cve-2015-7547-glibc-getaddrinfo-stack.html?m=1

https://isc.sans.edu/diary/CVE-2015-7547: Critical Vulnerability in glibc getaddrinfo/20737

 

责任编辑:蓝雨泪 来源: 51CTO.com
相关推荐

2011-08-08 15:48:08

2018-05-10 08:40:15

Windows Linux 漏洞

2013-07-31 15:44:51

2014-07-30 10:29:12

Android系统

2018-01-25 15:19:42

2014-02-25 15:12:07

2013-10-12 10:39:49

2014-12-24 12:34:48

2009-10-10 17:40:34

2013-11-05 16:32:18

搜狗浏览器安全漏洞

2015-08-28 10:45:25

2009-02-19 13:12:10

劲舞团漏洞久游网

2014-07-30 10:18:51

Android

2022-12-29 07:40:58

2013-08-29 15:24:36

2021-12-20 09:32:55

Log4j2漏洞攻击

2020-07-15 10:05:47

微软浏览器Windows

2022-02-17 20:45:47

VMware

2013-11-06 13:45:55

搜狗浏览器安全漏洞

2013-11-06 09:34:20

浏览器搜狗
点赞
收藏

51CTO技术栈公众号