今天就跟大家聊聊有關(guān)macOS 0-day提權(quán)漏洞的示例分析,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結(jié)了以下內(nèi)容,希望大家根據(jù)這篇文章可以有所收獲。
創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都做網(wǎng)站、網(wǎng)站設(shè)計(jì)、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的偏關(guān)網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
2017 年 12 月 31 日,一名推特賬號(hào)為 Siguza 的安全研究人員公布了 macOS 0-day 漏洞的詳情。該漏洞是一個(gè)本地提權(quán)漏洞,影響到所有 macOS 版本,主要涉及人機(jī)接口設(shè)備(如觸摸屏、按鍵、加速度計(jì)等)的內(nèi)核驅(qū)動(dòng)程序 IOHIDFamily。攻擊者利用這個(gè)漏洞可以在在內(nèi)核中進(jìn)行任意讀/寫,并執(zhí)行任意代碼、獲取 root 許可,進(jìn)而徹底接管系統(tǒng)。據(jù) Siguza 推測,漏洞可以追溯到 2002 年。
Siguza 原本是在分析 iOS 中 IOHIDFamily 的漏洞,結(jié)果發(fā)現(xiàn) IOHIDSystem 組件僅存在于 macOS 上,最后發(fā)現(xiàn)了這個(gè)漏洞。
我最初想研究 IOHIDSystem 組件,希望找到一個(gè)能夠滲透 iOS 內(nèi)核的漏洞。結(jié)果發(fā)現(xiàn) IOHIDFamily 的某些部分(尤其是 IOHIDSystem)只存在于 macOS 上,結(jié)果就在 macOS 上發(fā)現(xiàn)了這個(gè)存在于 IOHIDFamily 組件中的漏洞。
Siguza 還發(fā)布了名為 IOHIDeous 的 PoC 代碼,可在 Sierra 和 High Sierra(最高版本為 10.13.1)上實(shí)現(xiàn)利用,獲取完整的內(nèi)核讀/寫權(quán)限,并禁用系統(tǒng)完整性保護(hù)(SIP)功能和 Apple 移動(dòng)文件完整性(AMFI)保護(hù)功能。非特權(quán)用戶也可在所有最新版本的 macOS 上利用該漏洞。
圖:存在漏洞的 IOHIDSystem 代碼
如上圖所示,eop->evGlobalsOffset = sizeof(EvOffsets);
和evg = (EvGlobals *)((char *)shmem_addr + eop->evGlobalsOffset);
這兩行存在問題。
其中,eop->evGlobalsOffset
的值可以更改,所以會(huì)導(dǎo)致evg
指向其他非意向結(jié)果。
更多技術(shù)分析詳情可以點(diǎn)擊此處 查閱。
實(shí)驗(yàn)表明,該漏洞利用代碼運(yùn)行速度很快,能夠避免用戶交互,甚至在系統(tǒng)關(guān)閉時(shí)“能夠在用戶注銷和內(nèi)核殺毒之搶先運(yùn)行”。這意味著用戶在注銷、重新啟動(dòng)或關(guān)閉計(jì)算機(jī)時(shí),都有可能遭到攻擊,被攻擊者獲取 root 權(quán)限,連社工都不需要。
不過,Siguza 發(fā)布的 PoC 代碼似乎不適用于2017 年 12 月 6 日蘋果剛剛發(fā)布的 macOS High Sierra 10.13.2 版本,但他認(rèn)為這個(gè)版本仍然有可能存在問題。
由于某些原因,我這份時(shí)序攻擊在 High Sierra 10.13.2 上不起作用,不過我也不會(huì)再深入研究了。也許是因?yàn)?10,13,2 版本打了補(bǔ)丁,也許只是隨機(jī)變化的后果,我既不知道也不在乎。 漏洞依然存在,這個(gè) PoC 體現(xiàn)了該漏洞的信息泄露和內(nèi)核讀/寫的特性,不過這兩個(gè)特性不在同一個(gè)二進(jìn)制文件中。
我的主要目的是讓人們知道這個(gè)漏洞。我不會(huì)把 exploit 賣給黑客,因?yàn)槲也幌胫q為虐。如果蘋果的漏洞獎(jiǎng)勵(lì)計(jì)劃包含 macOS 的漏洞,或者這個(gè)漏洞出現(xiàn)遠(yuǎn)程利用的實(shí)例,那我早就把這個(gè)漏洞提交給蘋果了。
Siguza 公開披露這個(gè) macOS 0-day 漏洞的原因是該漏洞已經(jīng)被一名本地攻擊者利用,而且蘋果的漏洞獎(jiǎng)勵(lì)計(jì)劃并未涵蓋這一類的漏洞。所以,目前漏洞還未修復(fù)。由于這個(gè)漏洞需要在本地訪問計(jì)算機(jī)或者攻擊者已經(jīng)入侵過計(jì)算機(jī)的前提下才可以被利用,所以可能會(huì)被蘋果列為非嚴(yán)重問題,不會(huì)進(jìn)行緊急修復(fù)。
看完上述內(nèi)容,你們對(duì)macOS 0-day提權(quán)漏洞的示例分析有進(jìn)一步的了解嗎?如果還想了解更多知識(shí)或者相關(guān)內(nèi)容,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝大家的支持。