Linux 底層函數(shù)庫(kù)“glibc”再現(xiàn)重大安全漏洞!多個(gè) Linux 發(fā)行版受影響

2016年2月17日15:53:38 發(fā)表評(píng)論 3,986 ℃

Debian、Red Hat 以及更多其它 Linux 發(fā)行版,只要 glibc 版本大于 2.9 就會(huì)受到影響,可直接批量獲取大量主機(jī)權(quán)限。

Google 的安全研究團(tuán)隊(duì)近日披露了glibc getaddrinfo 溢出漏洞。

漏洞的詳細(xì)發(fā)現(xiàn)過(guò)程可以參見(jiàn)Google的博客 (題外話,google 的工程師都真牛)

漏洞描述:

漏洞成因在于DNS Server Response返回過(guò)量的(2048 ) 字節(jié), 導(dǎo)致接下來(lái)的response 觸發(fā)棧溢出。

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 發(fā)行版,只要glibc 版本大于2.9 就會(huì)受到影響。

目前Google 已提供了POC,據(jù)Google 博客中所述,該漏洞應(yīng)該是可以繞過(guò)內(nèi)存防護(hù)技術(shù),從而形成代碼執(zhí)行漏洞。

POC 使用測(cè)試

POC 地址:github.com/fjserna/CVE-2015-7547

我在自己的本地 lubuntu 上進(jìn)行測(cè)試,libc 版本為 2.19。lubuntu系列也屬于Debian 的一個(gè)發(fā)行版,故理論上滿足漏洞條件。

測(cè)試過(guò)程如下:

根據(jù)漏洞描述,我們可以做一個(gè)假的DNS Server 作為中間人,來(lái)驗(yàn)證該漏洞。

更改DNS 解析為 127.0.0.1,刷新DNS 緩存 sudo /etc/init.d/nscd restart

執(zhí)行 CVE-2015-7547-poc.py , 注意無(wú)需更改 ip_addr 。

 編譯 CVE-2015-7547-client.c , 執(zhí)行CVE-2015-7547-client

若含有漏洞,會(huì)造成Segmentation Fault。

Linux 底層函數(shù)庫(kù)“glibc”再現(xiàn)重大安全漏洞!多個(gè) Linux 發(fā)行版受影響

由于gilbc 2.9 是在2008年發(fā)行的,所以大量Linux 系統(tǒng)都會(huì)受到該漏洞影響。若一旦繞過(guò)內(nèi)存防護(hù)技術(shù),則該漏洞可以成為一大殺器。被劫持的DNS server進(jìn)行中間人攻擊,可直接批量獲取大量主機(jī)權(quán)限。

修復(fù)方案:

1 patch

【騰訊云】云服務(wù)器、云數(shù)據(jù)庫(kù)、COS、CDN、短信等云產(chǎn)品特惠熱賣(mài)中

發(fā)表評(píng)論

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: