欧美vvv,亚洲第一成人在线,亚洲成人欧美日韩在线观看,日本猛少妇猛色XXXXX猛叫

新聞資訊


    、介紹

    本文首先從Rootkit的生存期可達(dá)成的效果,以及運(yùn)用這項技術(shù)展開攻擊的可行性Windows Rootkit現(xiàn)狀分析四個角度展開討論,并結(jié)合歷史攻擊事件,分析掌握這項技術(shù)的APT組織所關(guān)注的目標(biāo)群體可能造成的影響,最后總結(jié)Rootkit在不同層次攻擊活動中所處的地位

    二、“低調(diào)”的Windows Rootkit

    當(dāng)你聽到Rootkit時,你的第一反應(yīng)是什么,高難度、高隱藏?是的,近年來,隨著Windows安全機(jī)制的不斷完善,往Windows系統(tǒng)中植入一個Rootkit的技術(shù)門檻也被不斷拔高。可就算Rootkit在所有安全產(chǎn)品檢出的惡意軟件中占比率極低,也并不代表它帶來的威脅就可以忽略,恰恰相反,Rootkit的高門檻使其更多地被運(yùn)用在更高質(zhì)量的攻擊活動中,從這一角度來看,每一個客戶場景出現(xiàn)的Rootkit背后都可能隱藏著長期的攻擊活動

    對于攻擊者來說,高投入的同時也意味著高收益,開發(fā)一款Rootkit不算簡單,但發(fā)現(xiàn)一個Rootkit同樣不簡單,一個普通惡意樣本的生存期可能在投入使用時便結(jié)束了,而一個Rootkit的生存期可以長達(dá)數(shù)年,甚至更久

    從Vista開始Windows會對加載的驅(qū)動進(jìn)行簽名驗證,這使得攻擊者的植入成本變高,而PatchGuard也增加了攻擊者對系統(tǒng)內(nèi)核篡改的成本。基于此,Windows Rootkit在野的聲音仿佛小了許多,我們對它的關(guān)注度也在降低,但它帶來的威脅真的就可以忽視了嗎?還是說更應(yīng)該理解為“小聲音,高威脅”。

    從下圖我們可以看出,無論Windows Rootkit在野聲音有多小,它都未曾消失過

    三、從生存期看Windows Rootkit

    【安全學(xué)習(xí)文檔】可私信我領(lǐng)取

    讓我們把APT攻擊的階段簡化,在初始打點(diǎn)階段攻擊者可能會采用漏洞利用或釣魚攻擊,毫無疑問,近幾年也是釣魚攻擊大行其道地幾年。

    以文檔釣魚為例,收到的釣魚郵件可能會像這樣

    當(dāng)然,我們也可能收到偽裝成文檔的PE文件

    它也有可能長成這樣

    盡管形式還算多樣,但細(xì)心的你一定已經(jīng)發(fā)現(xiàn)了,它們或多或少都存在著一些可識別的特征,在經(jīng)歷過釣魚的反復(fù)洗禮后,甚至?xí)胁糠秩瞬还苁裁脆]件都直接丟VT跑一圈(當(dāng)然這樣做不好,畢竟誤傳敏感文件還是比較嚴(yán)重的),這些特征讓攻擊活動變得非常容易暴露。

    在假定攻擊活動已經(jīng)進(jìn)行到權(quán)限維持之后,我們也會排查到下述類似情況

    當(dāng)然,這樣做會顯得有些過于直接,攻擊者可能會采用更為復(fù)雜的手法,比如DLL劫持,一方面避免了持久化的痕跡,另一方面在免殺上也取得了一定效果,但我們?nèi)匀豢梢杂^測到

    這樣來看,發(fā)現(xiàn)一個異常也不算太難,對吧,畢竟攻擊者在每個環(huán)節(jié)都或多或少地留下了一些痕跡,無論我們哪個環(huán)節(jié)捕獲到了威脅,都可以向前和向后反溯,還原攻擊鏈路。但由于真實環(huán)境足夠復(fù)雜,也不是所有人員都具備安全知識和安全意識,導(dǎo)致攻擊活動通常也能成功,甚至持續(xù)很長時間不被發(fā)現(xiàn)。但至少,當(dāng)你感知到它可能存在威脅時,還是能比較容易地發(fā)現(xiàn)它。

    那么,這樣的威脅我們還是可以稱之為“擺在明面上”的威脅,你只需要更加耐心和細(xì)心地將它們找出來,而隨著安全體系建設(shè)地逐漸完整和全員安全意識地不斷提高,此類攻擊的生存期也會不斷縮短

    回過頭來,我們再看一看Windows Rootkit,歷史上APT組織Strider曾利用一款名為Remsec的惡意軟件對多個國家,包括政府機(jī)構(gòu)在內(nèi)的系統(tǒng)進(jìn)行了長達(dá)五年之久的監(jiān)控

    其實這里少說了一個詞“至少”,該Rootkit幫助攻擊者完成了至少長達(dá)五年的攻擊活動,這期間包括俄羅斯、伊朗、盧旺達(dá)、中國、瑞典、比利時在內(nèi)的多個國家的政府機(jī)構(gòu)、科學(xué)研究中心、軍事組織、電信提供商和金融機(jī)構(gòu)都有被感染。

    且該Rootkit的功能非常完善,具有密碼竊取、鍵盤記錄、后門控制等多種功能,試想這樣一個惡意軟件對上述目標(biāo)進(jìn)行著長達(dá)至少五年的監(jiān)控,是否足夠讓人警惕呢?

    Remsec被發(fā)現(xiàn)之時,研究員們對它的評價是“一種幾乎不可能被檢測到的惡意軟件”,而這也是一直以來大家對Rootkit的認(rèn)識,這一點(diǎn)是否非常值得我們深思呢,究竟是Windows Rootkit慢慢銷聲匿跡了,還是受限于能力不足導(dǎo)致其檢出率如此之低,而生存期又如此之長呢?

    其實對于攻擊者來說,打點(diǎn)技巧是多種多樣的,并不一定要選擇像釣魚這樣會留下明顯痕跡的技巧,對于那些使用未知技巧,甚至是0day進(jìn)行攻擊的活動,我們想要在打點(diǎn)階段捕獲它們的可能性較低,這種情況下,捕獲攻擊者在后門植入、持久化等階段留下的痕跡,并基于此反溯,還原攻擊鏈路會是一個不錯的選擇,而Rootkit會把這些痕跡通通隱藏,讓我們的命中難度劇增。下圖顯示了近年來在野0day數(shù)量

    四、從達(dá)成效果看Windows Rootkit

    那么Rootkit究竟能達(dá)成什么樣的效果呢?

    以一個操作圖形接口的Rootkit為例,它在任務(wù)管理器中隱藏了calc.exe

    換句話說,Rootkit可以把攻擊者不想讓你發(fā)現(xiàn)的攻擊痕跡進(jìn)行隱藏,比如我們在進(jìn)程異常排查中,會關(guān)注那些有著異常通信或是可疑模塊加載的進(jìn)程。

    以白加黑技術(shù)為例,該技術(shù)雖然能在免殺上取得良好效果,但如果同時存在異常通信和可疑模塊(未簽名的dll),我們就還是能較為容易地定位到異常點(diǎn)。

    而通過一些簡單的技巧,就可以在一定程度上對白加黑利用中的惡意dll進(jìn)行隱藏

    .

    而Rootkit能達(dá)成的隱藏效果,會遠(yuǎn)勝于上圖情況,當(dāng)使用Rootkit從分析工具中徹底隱去這些異常點(diǎn)時,你還能快速地判定該進(jìn)程有問題嗎?

    當(dāng)然,此處僅是過濾了異常模塊,這也只是Rootkit能做到的一小部分,除此以外,服務(wù)、端口、流量等也都可以通過Rootkit進(jìn)行操作,那么你想看到什么,攻擊者就可以讓你看到什么,“擺在明面上”的威脅就轉(zhuǎn)變成了“隱藏在暗地里”的威脅,想在主機(jī)上發(fā)現(xiàn)異常就會變得極其困難。

    五、從可行性來看Windows Rootkit

    前面的內(nèi)容提到,Windows引入了兩大安全機(jī)制來對抗Rootkit,分別是簽名驗證和PatchGuard,我們將針對這兩個點(diǎn)分別展開討論。

    1. 簽名驗證

    關(guān)于這部分內(nèi)容,國外安全研究員Bill Demirkapi在Black Hat 2021的議題《Demystifying Modern Windows Rootkits》中給出了答案,相應(yīng)的解決方案分別為直接購買濫用泄露證書尋找“0day”驅(qū)動

    1.1 購買證書

    這種方式其實沒什么好說的,攻擊者唯一需要考慮的問題,就是購買渠道是否足夠可靠,是否存在身份暴露的風(fēng)險。

    1.2 濫用泄露證書

    從可行性上來說,Windows根本不關(guān)心證書是否已經(jīng)過期或者已經(jīng)被吊銷,通過泄露的證書,攻擊者就可以生成在任意Windows版本下都有效的驅(qū)動簽名

    由于不需要購買證書,在降低成本的同時也避免了因購買渠道不可靠而暴露身份的風(fēng)險,此外,通過這種方式進(jìn)行植入所需的前置條件也不算多,與挖掘“0day”驅(qū)動的方式相比,技術(shù)難度降低很多,當(dāng)然,掌握了泄露證書的情報后,相關(guān)安全廠商可以針對此類Rootkit進(jìn)行查殺攔截

    下圖是收集到的一些歷史泄露證書,從此圖可以看出泄露的情報并不少見

    1.3 “0day”驅(qū)動利用

    從可行性來說,一定存在著可被利用的“0day”驅(qū)動,而歷史上,就曾有知名的APT組織利用具有合法簽名驅(qū)動程序來進(jìn)行惡意驅(qū)動的加載,該組織是俄羅斯APT黑客組織Turla,它利用的合法驅(qū)動為VirtualBox,下文是對該利用過程的描述

    2. PatchGuard

    網(wǎng)上有著包含win7、win10在內(nèi)的不少開源項目,攻擊者可通過集成這些項目繞過PatchGuard,往內(nèi)核中植入惡意代碼,實現(xiàn)Rootkit功能

    六、從現(xiàn)狀來看Windows Rootkit

    當(dāng)我們嘗試在VT上進(jìn)行Hunting,會發(fā)現(xiàn)無效證書的利用非常普遍

    其實,就算你遇到一個有著合法簽名的Rootkit也不算什么新鮮事了

    回過頭來單看2021,Windows Rootkit攻擊更多地集中在游戲行業(yè)(我想,這也是它們相對而言較快暴露的一個原因,傳播量變大的同時,也遭受了更多的關(guān)注),但當(dāng)Rootkit調(diào)轉(zhuǎn)槍頭對準(zhǔn)更高價值的目標(biāo)時,當(dāng)它們的目的不再是簡單地獲利時,當(dāng)它們的動靜更小隱藏更具針對性時,我們是否做好應(yīng)對準(zhǔn)備了呢?畢竟從技術(shù)角度而言,APT組織又有什么理由拒絕Rootkit呢?

    值得注意的是,當(dāng)APT組織拿起Rootkit這個武器時,它們槍頭要對準(zhǔn)的將會是包括政府、軍事在內(nèi)的各種重要組織機(jī)構(gòu),它們的目的將不再是簡單地獲利,而是對目標(biāo)地長期監(jiān)控重要情報的竊取,這一點(diǎn)從歷史APT運(yùn)用Rootkit進(jìn)行的攻擊事件中不難發(fā)現(xiàn)。

    七、總結(jié)

    基于社工和釣魚結(jié)合的攻擊活動雖能以較小的成本拿下目標(biāo),但留下的明顯痕跡會導(dǎo)致其生存期驟減,很容易在打點(diǎn)階段就暴露,而通過其它未知渠道打點(diǎn)后,借助合法進(jìn)程、機(jī)制完成惡意活動(如Lazarus對Get-MpPreference的利用),或通過白加黑(如dll劫持,LOLBINS)等方式進(jìn)行后門安置和權(quán)限維持等,雖然在免殺層面有著不錯的效果,卻不能很好地隱匿攻擊痕跡

    Rootkit更多地對應(yīng)在后門安置、持久化階段,掌握這項技術(shù)的攻擊者也會有著更高的技術(shù)水平,他們或許會更青睞于一些高級的打點(diǎn)技巧,以降低每個環(huán)節(jié)被捕獲的可能性,當(dāng)然,越高價值的目標(biāo)越會吸引更高成本的投入,我們想要從容應(yīng)對也就更加困難,而事實上,是否有APT組織正利用著此技術(shù)進(jìn)行攻擊活動也尚未可知。

    以制作動作游戲聞名世界的Capcom最近曝出烏龍事件。在Capcom出品的《街頭霸王5》一次更新中,它內(nèi)置了一個用來防止玩家作弊的驅(qū)動程序Capcom.sys,然而這個反作弊驅(qū)動卻闖了大禍,剛發(fā)布不久就被曝光其實是一個高度危險的后門,它可以幫助任意程序獲得系統(tǒng)內(nèi)核權(quán)限,當(dāng)然也會被木馬病毒輕易利用,比如繞過沙箱、破壞殺毒軟件、HIPS等防護(hù)產(chǎn)品,完全瓦解系統(tǒng)安全體系。

    Capcom中文名為卡普空株式會社,代表性游戲有《生化危機(jī)》、《街頭霸王》、《鬼泣》等,可以說很多70后、80后玩家都是玩著Capcom的游戲長大的。然而此次《街頭霸王5》的后門事件卻讓Capcom陷入窘境,為此專門致歉并發(fā)布了升級補(bǔ)丁。這里我們建議相關(guān)游戲用戶盡快升級補(bǔ)丁,同時提醒各大安全廠商注意,盡快針對存在后門的Capcom.sys版本進(jìn)行防御。根據(jù)測試,目前國內(nèi)外仍有大量殺毒軟件可以被惡意程序利用Capcom后門輕松擊潰。

    以下我們將對Capcom.sys進(jìn)行深入分析,揭秘該驅(qū)動后門對系統(tǒng)安全造成的巨大隱患。

    0x1 逆向分析Capcom.sys

    Capcom.sys所做的就是關(guān)閉操作系統(tǒng)的安全機(jī)制并提升自己游戲為管理員權(quán)限,目的在于能夠?qū)ο到y(tǒng)上所有的文件進(jìn)行操作。它預(yù)留了接口讓應(yīng)用層的程序(游戲)調(diào)用,來實現(xiàn)一些更高級、更自由的操作,比如防止游戲內(nèi)存修改,驗證正版用戶等。接下來我們開始逆向分析 Capcom.sys,看看此神奇的驅(qū)動到底做了什么。。。

    最關(guān)鍵的函數(shù)有如下5個:

    1:關(guān)閉SMEP(Supervisor Mode Execution Protection)

    那么啥是SMEP呢?SMEP全稱是Supervisor Mode Execution Protection。監(jiān)管模式執(zhí)行保護(hù)。存在與CR4中的第20位處。

    SMEP的引入是Intel考慮到系統(tǒng)安全而新增的機(jī)制。我們知道CPU提供了環(huán)權(quán)限的機(jī)制,也就是我們平常所說的ring0,ring3。當(dāng)然還有ring1和ring2(甚至ring-1)。只不過windows操作系統(tǒng)只使用了2個環(huán)(ring0和ring3)。環(huán)的產(chǎn)生意味著權(quán)限的產(chǎn)生。不同環(huán)的權(quán)限等極也是不同的,環(huán)的數(shù)字越小,則權(quán)限越高。SMEP的存在就是為了防止不同環(huán)訪問不同權(quán)限的頁面而產(chǎn)生的。

    在未開啟SMEP前,Supervisor Mode(ring0-2)所對應(yīng)的page entry屬性可以是user或者Supervisor,也就是說page entry.u/s可以為0,也可以為1。User mode(ring-3)所對應(yīng)的page entry屬性只能是user(page entry.u/s=0)。

    在開啟SMEP后,Supervisor Mode(ring0-2)所對應(yīng)的page entry.u/s只能為0。這也就意味著Supervisor Mode(ring0-2)將無法訪問User mode(ring3)的頁面。

    Capcom.sys正是利用了這點(diǎn),關(guān)閉了SMEP,使得ring0的模式可以訪問ring3的代碼,這里所指的ring3的代碼也就是合法的shellcode了。不過這比shellcode更生猛,因為Capcom.sys可以直接訪問ring3的函數(shù)。

    2:開啟SMEP(Supervisor Mode Execution Protection)

    3.驅(qū)動的IOCtl通信函數(shù)(只取關(guān)鍵部分)

    我們可以知道,當(dāng)控制碼為0xAA012044時,代表的是32位模式,當(dāng)控制碼為0xAA013044時,代表的是64位模式。此驅(qū)動樣本為64位,所以我們著重研究64位的控制碼0xAA013044即可。

    4.漏洞利用函數(shù)

    我們可以知道,所被調(diào)用的函數(shù)類型大致為void(*)(PVOID(*)(PUNICODE_STRING))。即該函數(shù)的第一個參數(shù)為MmGetSystemRoutineAddress的地址。

    在這里有一個非常關(guān)鍵的地方,條件判斷的第一句話,這里猜想是Capcom為了防止此驅(qū)動濫用而設(shè)置的暗樁。所以我們構(gòu)造shellcode的時候需要特別注意。

    5.解密Device Name函數(shù)

    這里看的有點(diǎn)辣眼睛,但是我們不需要理他。因為我們可以直接使用WinObj來得知他創(chuàng)建的設(shè)備符號鏈接名為:Htsysm72FB。有了此符號鏈接名,我們可以使用CreateFile函數(shù)來打開它的驅(qū)動設(shè)備并且發(fā)送控制碼來利用了。。

    至此,逆向分析到此結(jié)束,我們來總結(jié)一下:Capcom.sys初衷只是為Capcom自家人提供的一種反作弊的插件,從他的設(shè)備名字符串混淆與調(diào)用暗樁可以看出,他并不想讓別人使用它,但是這并沒有什么用。從軟件安全角度上去看,此sys沒有加殼是被利用的最致命因素之一。攻擊者只需要繞過暗樁,即可調(diào)用它的驅(qū)動。

    0x2 利用前的準(zhǔn)備工作

    基于之前的分析,我們知道了設(shè)備名稱的符號連接為Htsysm72FB,根據(jù)微軟的定義。我們需要在他前面加上file:///\.\。然后使用CreateFile函數(shù)來打開他的設(shè)備。

    接著開始準(zhǔn)備shellcode。

    第一行,前8個字節(jié)是為了繞過暗樁而加入的,前8個字節(jié)需要填寫利用函數(shù)的入口地址(也就是第二行)。

    第二行,實現(xiàn)的是CALL $+8處 等價于push第三行(利用函數(shù)的地址) && Rip=第四行(POP RAX)

    第三行,為我們需要填寫的利用函數(shù)地址。

    最后一行,跳向我們的利用函數(shù)地址處。

    在該模板內(nèi)填寫相應(yīng)的內(nèi)容即可。

    最后,開始向Capcom.sys發(fā)送控制碼來利用此驅(qū)動。值得注意的是0xAA013044為64位模式,0xAA012044為32位模式。需要傳遞的shellcode為之前的模板+8處,以此來繞過暗樁。

    0x3 基于Capcom.sys實現(xiàn)無簽名加載驅(qū)動

    無簽名加載驅(qū)動的話題已經(jīng)很老套了。

    具體分析請參考j00ru的“A quick insight into the Driver Signature Enforcement“這篇文章

    以及MJ0011的這篇pdf

    http://www.powerofcommunity.net/poc2012/mj0011.pdf

    結(jié)合兩位大牛的文章,我們知道在WIN7上,可以通過修改nt!g_CiEnabled為0來繞過,目的是讓操作系統(tǒng)以為你在WINPE模式中。在WIN8及以上此驗證轉(zhuǎn)移到了ci!g_CiOptions上。現(xiàn)在我們在WIN10 14393上做這個實驗,驗證同樣在ci!g_CiOptions。但是不同與WIN8的是,WIN10 已經(jīng)把ci!g_CiOptions加入到了PatchGuard的豪華套餐中。倘若修改不還原或者修改時機(jī)恰巧撞遇PatchGuard的檢測。那么一瞬間你將進(jìn)入藍(lán)屏的節(jié)奏…關(guān)于PatchGuard,讀者可自行搜索相關(guān)內(nèi)容,這里不再展述。

    1.尋找ci!g_CiOptions(Windows\System32\CI.dll)

    可以發(fā)現(xiàn),該變量存在于CipInitialize 函數(shù)中,但是此函數(shù)未導(dǎo)出,不過慶幸的是。CI.dll給我們導(dǎo)出了CiInitialize函數(shù),改函數(shù)最后會調(diào)用CipInitialize。

    那么我們的思路很簡單,首先獲取導(dǎo)出函數(shù)地址CiInitialize,根據(jù)它找到CipInitialize函數(shù),最后根據(jù)CipInitialize找到g_CiOptions,然后修改為8即可(由于在WIN10 14393版本上進(jìn)入測試簽名模式時,該值為8)。當(dāng)然得先保存一份之前的數(shù)值,便于還原。

    2.注意要點(diǎn)

    a.IRQL(中斷請求等極)

    還記得sys的調(diào)用函數(shù)嗎,它的形式如下:

    關(guān)閉中斷->調(diào)用Ring3利用函數(shù)->開啟中斷。

    我們注意到,再執(zhí)行我們的利用函數(shù)的過程中,中斷始終是處于關(guān)閉的狀態(tài),也就是說我們的IRQL(中斷請求等極)一直處于Dispatch級別,而大多數(shù)內(nèi)核函數(shù)調(diào)用的要求是IRQL==PASSIVE_LEVEL。這就會造成概率性藍(lán)屏。所以我們必須在我們的利用函數(shù)頭尾處加入_enable和_disable,來手動的配合它的流程,這樣我們就可以避免IRQL的問題了。

    b.禁用KeStackAttachProcess(CR3切換)

    由于該函數(shù)會切換CR3(頁目錄表基址)。并且最終返回到當(dāng)前進(jìn)程的CR3。而我們當(dāng)前是在Ring0模式。所以顯示會發(fā)生奇妙的藍(lán)屏。。。

    c.利用函數(shù)盡量簡短

    因為在WIN10 14393版本上,經(jīng)過測試SMEP已被加入PatchGuard豪華套餐中。所以需要盡快的將SMEP恢復(fù),這也就意味著我們的利用函數(shù)需要盡量的簡短。當(dāng)然了,時運(yùn)不濟(jì)的話,可能就在那一瞬間就被檢測到了。

    d.配合動態(tài)PatchGuard

    一般而言,做到以上3點(diǎn),加載/卸載驅(qū)動1-5次之間的藍(lán)屏幾率是很小的。但是如果需要完美的話,那就要動態(tài)的干PatchGuard了。我們知道,在WIN7以及WIN8已經(jīng)有牛實現(xiàn)了動態(tài)干PatchGuard并已放出,但是在WIN10上目前并沒有公開放出源代碼。不過國內(nèi)已經(jīng)有研究者實現(xiàn)了這一攻擊效果。

    0x4 題外話

    對于在微軟新簽名機(jī)制(具體請使用搜索引擎搜索)下有簽名的朋友來說,這并沒有什么用。但是如果被壞人利用了,那就比較尷尬了。因為此驅(qū)動有合法簽名,大多數(shù)殺毒軟件還沒有對其攔截,而當(dāng)壞人進(jìn)入內(nèi)核后,那就可以想干啥就干啥了。

    0x5 對各大安全廠商的建議

    由于Capcom公司目前已經(jīng)道歉,并承諾不再使用此類手段的情況來看。安全廠商完全可以把該Capcom.sys列入黑名單中,以此徹底絕殺針對該后門的一切利用。

網(wǎng)站首頁   |    關(guān)于我們   |    公司新聞   |    產(chǎn)品方案   |    用戶案例   |    售后服務(wù)   |    合作伙伴   |    人才招聘   |   

友情鏈接: 餐飲加盟

地址:北京市海淀區(qū)    電話:010-     郵箱:@126.com

備案號:冀ICP備2024067069號-3 北京科技有限公司版權(quán)所有