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僵死進程的產生與避免
男女平等進程中出現的新矛盾和新問題
主站蜘蛛池模板: 亚洲一区第一页| www成人国产在线观看网站| 国产九九精品视频| 欧美日韩国产成人在线观看| 日韩欧美高清视频| 国产精品熟女亚洲AV麻豆| 欧美yw精品日本国产精品| 亚洲天堂.com| 国产自视频| jizz在线免费播放| 欧美一级在线看| 无码'专区第一页| 色播五月婷婷| www.91中文字幕| 国产剧情伊人| 国产区91| 亚洲女人在线| 特级精品毛片免费观看| 东京热一区二区三区无码视频| 综合网久久| 日本a∨在线观看| 国产成人综合久久精品尤物| 99re视频在线| 在线欧美日韩国产| 亚洲av无码成人专区| 成人在线天堂| 久久久久亚洲精品成人网 | 欧美精品aⅴ在线视频| 国产欧美在线| 激情无码字幕综合| 国产情侣一区二区三区| 国产精品刺激对白在线| 久久91精品牛牛| 欧美日韩在线观看一区二区三区| 亚洲欧美自拍一区| 亚洲AV人人澡人人双人| 亚洲精品va| 免费不卡视频| 91娇喘视频| 久久国产精品夜色| 欧美色伊人| 不卡无码h在线观看| 免费国产小视频在线观看| 五月天丁香婷婷综合久久| 成人午夜视频网站| 欧美天堂在线| 伊人福利视频| 精品国产成人a在线观看| www.国产福利| 午夜视频日本| 精品国产成人国产在线| 欧美日韩一区二区三区在线视频| 国产丝袜91| 2021天堂在线亚洲精品专区| 91麻豆国产在线| 激情在线网| 自拍偷拍一区| 成人国产精品网站在线看| 日韩精品高清自在线| 国产精品理论片| 成年网址网站在线观看| 午夜无码一区二区三区| 亚洲精品在线观看91| 99精品伊人久久久大香线蕉| 日本一区二区不卡视频| 欧美精品成人| 九九这里只有精品视频| 欧美成在线视频| 永久毛片在线播| 日本黄色不卡视频| 亚洲成人高清无码| 91精品情国产情侣高潮对白蜜| 亚洲精品另类| 亚洲免费毛片| 国产成人精品亚洲日本对白优播| 国产综合网站| 日韩小视频网站hq| 欧美日韩高清在线| 国产精品分类视频分类一区| 亚洲综合极品香蕉久久网| 伊人网址在线| 亚洲视频免|