999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

Cobalt Strike shellcode 和加載器的免殺

2021-10-11 14:10:16陳智峰
魅力中國 2021年31期
關鍵詞:進程程序

陳智峰

(南京東南司法鑒定中心,江蘇 南京 210008)

引言

Cobalt Strike 可以簡單認為是一款遠控程序,相當于木馬,但它卻又不僅僅是常規的木馬遠控。它是一款基于Java 編寫的全平臺多方協同后滲透攻擊框架,也稱為CS。由于該框架具備團隊協作攻擊、流量防檢測、防安全軟件查殺等優勢,因而也被大量黑客組織用于真實的高危害性的攻擊。

一、shellcode 簡介

shellcode 是一段用于利用軟件漏洞而執行的代碼,為16 進制的機器碼,因為經常讓攻擊者獲得shell 而得名。shellcode 常常使用機器語言編寫。shellcode 只是一段字符,無法執行的,需要一個加載器來運行加載。打個比喻,shellcode 就相當于毒藥本身,為了給目標服用,我們還需要容器比如瓶子來裝載它。毒藥的免殺是欺騙目標讓其服下,木馬的免殺是欺騙、躲過殺毒軟件的檢測。免殺的手段分兩大類,一種是針對shellcode(毒藥本身),一種是針對加載器(容器),都是要想辦法偽裝成正常物品。大部分時候需要搭配使用,效果更佳。如圖1 為cs 生成的64 位shellcode。

二、shellcode 免殺技術

Shellcode 的免殺,主要分為編碼和加密,就是把shellcode 進行加密存儲,然后在執行的時候再解密出來執行,這樣殺軟靜態識別時候就不認識我們的shellcode。我們可以對全部shellcode 使用同一種加密,也可以對shellcode 進行分段使用不同的加密手段加密再分段解密,當然也可以進行多次加密等。其中編碼有base64 編碼,字符串編碼,uuid 硬編碼。加密的話有AES,XOR,ROT,RSA,RC4 等等。

下面以UUID 硬編碼為例,全稱為通用唯一識別碼(Universally Unique Identifier,縮寫:UUID),是用于計算機體系中以識別信息數目的一個128 位標識符,根據標準方法生成,不依賴中央機構的注冊和分配,UUID 具有唯一性。如圖2 是一個python 腳本,用來將shellcode 轉換為UUID 硬編碼。

三、加載器的免殺技術

加載器的免殺,這里首先介紹內存加載方式,這是逃避靜態查殺的關鍵。Windows 操作系統的內存有三種屬性,分別為:可讀、可寫、可執行。在申請內存頁時,一定要把控好屬性,可以在Shellcode 讀入時,申請一個普通的可讀寫的內存頁,然后再通過VirtualProtect 改變它的屬性,變成可執行。

接著介紹遠程加載,也是分離免殺的一種,將惡意代碼放置在程序本身之外的一種加載方式。首先介紹http 方式,顧名思義就是需要一個Http server 和http client,我們需要先運行http server 提供服務,木馬就是http client,運行時候去Http server 請求shellcode,再加載進內存執行。還有icmp,dns,sockets 方式,只是協議不一樣,原理都是一樣的。

加載器的免殺手法還有進程注入,我們可以通過線程注入的方式將病毒代碼注入到系統其他正常進程中,這樣不但提高了病毒和木馬隱蔽性,同時如果將病毒注入到系統的核心進程中也降低了被殺毒軟件查殺的可能性。[2]也就是將shellcode 注入到進程中,進程可以是存在的進程,也可以是自己新建進程。比如計劃把shellcode 注入notepad.exe 中,為了不影響現有的進程,我們創建一個掛起的進程notepad.exe,讀取線程上下文,讀取進程內存,讀取Notepad.exe 原始入口點,卸載Notepad.exe 占用的內存,將shellcode 放入內存緩沖區,在Notepad.exe 進程中分配一個內存空間,將shellcode 注入到Notepad.exe 的進程里,修改Notepad.exe 的區段,修改Notepad.exe 的入口點,恢復主線程,成功注入。這里再介紹下一種比較新形的注入,Early Bird 注入,是一種簡單而強大的技術,允許攻擊者在其主線程啟動之前將惡意代碼注入到合法進程,從而避免被大多數反惡意軟件產品所使用的Windows hook 引擎檢測到。Early Bird 技術代碼的注入方法依賴于Windows 內置的APC(異步過程調用)函數,該函數允許應用程序在特定線程的上下文中異步執行代碼。下面介紹攻擊者將惡意代碼注入合法進程的步驟說明:1.創建一個合法的Windows 進程的暫停進程(例如,svchost.exe);2.在該進程中分配內存(svchost.exe)并將惡意代碼寫入分配的內存區域;3.將異步過程調用(APC)排隊到該進程的主線程(svchost.exe);4.由于APC只能在處于可警告狀態時執行進程,因此只要主線程恢復,就可以調用NtTestAlert 函數強制內核執行惡意代碼。

說到進程注入,不得不提反射dll 注入。常規的DLL 注入方式相信大家都很熟悉了,就是讓程序A 強行加載程序B 給定的a.dll,并執行程序B 給定的a.dll 里面的代碼。注意,程序B 所給定的a.dll 原先并不會被程序A 主動加載,但是當程序B 通過某種手段讓程序A“加載”a.dll 后,程序A 將會執行a.dll 里的代碼,此時,a.dll 就進入了程序A 的地址空間,而a.dll 模塊的程序邏輯由程序B 的開發者設計,因此程序B 的開發者可以對程序A 為所欲為。因為執行命令需要借用某些合法進程,所以一般的進程注入都要繞過AV檢測。反射DLL注入可以將加密的DLL保存在磁盤(或者以其他形式如shellcode 等),之后將其解密放在內存中。之后跟DLL注入一般,使用VirtualAlloc和WriteProcessMemory將DLL寫入目標進程。因為沒有使用LoadLibrary 函數,要想實現DLL 的加載運行,我們需要在DLL 中添加一個導出函數,ReflectiveLoader,這個函數實現的功能就是加載自身。

四、結語

以上就是目前常見的免殺技術,每一種單獨的方法可能都不能直接免殺,但是多種方法的靈活組合則能達到不錯的效果。

猜你喜歡
進程程序
債券市場對外開放的進程與展望
中國外匯(2019年20期)2019-11-25 09:54:58
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
失能的信仰——走向衰亡的民事訴訟程序
“程序猿”的生活什么樣
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
恐怖犯罪刑事訴訟程序的完善
我國高等教育改革進程與反思
教育與職業(2014年7期)2014-01-21 02:35:04
Linux僵死進程的產生與避免
男女平等進程中出現的新矛盾和新問題
主站蜘蛛池模板: 欧美一区二区三区欧美日韩亚洲| 日韩午夜福利在线观看| 一本色道久久88| 午夜福利无码一区二区| 免费中文字幕在在线不卡| 日韩黄色大片免费看| 天天干天天色综合网| 夜夜操狠狠操| 97青青青国产在线播放| 91福利免费视频| 一本无码在线观看| 日本五区在线不卡精品| 国产91精品调教在线播放| 国产成人精品无码一区二| 九色视频线上播放| 亚洲成人动漫在线观看| 亚洲人成日本在线观看| 久久综合结合久久狠狠狠97色| 成人蜜桃网| 国产99视频免费精品是看6| 伊人久久大香线蕉影院| 伊人色在线视频| 激情爆乳一区二区| 日韩最新中文字幕| 欧洲欧美人成免费全部视频 | 2021最新国产精品网站| 香蕉在线视频网站| 97精品久久久大香线焦| 91人人妻人人做人人爽男同 | 亚洲熟妇AV日韩熟妇在线| 日韩在线观看网站| 美女被躁出白浆视频播放| 色天天综合| 亚洲人成网线在线播放va| 制服丝袜无码每日更新| 99热国产这里只有精品9九| 国产精品爽爽va在线无码观看| 久久国产精品无码hdav| 一级在线毛片| 爱做久久久久久| 91美女视频在线观看| 国产91成人| 一级毛片免费高清视频| 最新亚洲人成无码网站欣赏网 | 97av视频在线观看| 亚洲一区二区三区麻豆| 国产黄在线观看| 免费国产福利| 欧美日韩一区二区在线播放| 91综合色区亚洲熟妇p| 女同国产精品一区二区| 国产麻豆精品手机在线观看| 狠狠综合久久| 国产在线精品网址你懂的| 亚洲精品在线观看91| 99热这里都是国产精品| 99九九成人免费视频精品 | 制服丝袜在线视频香蕉| 老司机aⅴ在线精品导航| 黄色一级视频欧美| 国产精品va| 欧美日本在线播放| 91亚洲精选| 91国内在线观看| 国产久操视频| 国产日本欧美亚洲精品视| yy6080理论大片一级久久| 青青草原国产av福利网站| 国产精品久久久久久久久久98| 东京热高清无码精品| 久久一色本道亚洲| 国产日韩欧美在线播放| 亚洲精品在线影院| 成人在线亚洲| 欧洲一区二区三区无码| 中文字幕久久波多野结衣| 久久精品国产国语对白| 亚洲 欧美 偷自乱 图片| 亚洲三级电影在线播放| 国产成人精彩在线视频50| 在线免费亚洲无码视频| 伊人久久综在合线亚洲2019|