精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Gargoyle——內存掃描逃逸技術

安全 黑客攻防
Gargoyle是一種在非可執行內存中隱藏可執行代碼的技術。

[[185690]]

0x00 前言

Gargoyle是一種在非可執行內存中隱藏可執行代碼的技術。在一些程序員定義的間隔,gargoyle將蘇醒,且一些ROP標記它自身為可執行,且做一些事:

這個技術是針對32位的Windows闡述的。在本文中,我們將深入探討其實現細節。

0x01 實時內存分析

執行實時內存分析是一個相當大代價的操作,如果你使用Windows Defender,你可能在這個問題上就到頭了(谷歌的反惡意軟件服務)。因為程序必須在可執行的內存中,用于減少計算負擔的一種常用技術是只限制可執行代碼頁的分析。在許多進程中,這將數量級的減少要分析的內存數量。

Gargoyle表明這是個有風險的方式。通過使用Windows異步過程調用,讀寫內存能被作為可執行內存來執行一些任務。一旦它完成任務,它回到讀寫內存,直到定時器過期。然后重復循環。

當然,沒有Windows API InvokeNonExecutableMemoryOnTimerEx。得到循環需要做一些操作。

0x02 Windows異步過程調用(APC)

異步編程使一些任務延遲執行,在一個獨立的線程上下文中執行。每個線程有它自己的APC隊列,并且當一個線程進入alertable狀態,Windows將從APC隊列中分發任務到等待的線程。

有一些方法來插入APC:

ReadFileEx

SetWaitableTimer

SetWaitableTimerEx

WriteFileEx

進入alertable狀態的方法:

SleepEx

SignalObjectAndWait

MsgWaitForMultipleObjectsEx

WaitForMultipleObjectsEx

WaitForSingleObjectEx

我們要使用的組合是用CreateWaitableTimer創建一個定時器,然后使用SetWaitableTimer插入APC隊列:

默認的安全屬性是fine,我們不想手動重置,并且我們不想要一個命名的定時器。因此對于CreateWaitableTimer所有的參數是0或者nullptr。這個函數返回一個HANDLE,表示我們新的定時器。接下來,我們必須配置它:

第一個參數是我們從CreateWaitableTimer得到的句柄。參數pDueTime是一個指向LARGE_INTEGER的指針,指定第一個定時器到期的時間。例如,我們簡單的設為0(立即過期)。lPeriod定義了過期間隔(毫秒級)。這個決定了gargoyle調用的頻率。

下個參數pfnCompletionRoutine將是我們要努力的主題。這是來自等待線程的Windows調用的地址。聽起來很簡單,除非在可執行內存中分發的APC沒有一個gargoyle代碼。如果我們將pfnCompletionRoutine指向gargoyle,我們將觸發數據執行保護(DEP)。

取而代之,我們使用一些ROP gadget,將重定向執行線程的棧到lpArgToCompletionRoutine指向的地址。當ROP gadget執行,指定的棧在調用gargoyle第一條指令前調用VirtualProtectEx來標記gargoyle為可執行。

最后一個參數與在定時器到期后是否喚醒計算機有關。我們設置為false。

0x03 Windows數據執行保護和VirtualProtectEx

最后是VirtualProtectEx,用來修改各種內存保護屬性:

我們將在兩種上下文中調用VirtualProtectEx:在gargoyle完成執行后(在我們觸發線程alertable之前)和在gargoyle開始執行之前(在線程分發APC之后)??促Y料了解詳情。

在這個PoC中,我們將gargoyle,跳板,ROP gadget和我們的讀寫內存都放進同一個進程中,因此第一個參數hProcess設置為GetCurrentProcess。下一個參數lpAddress與gargoyle的地址一致,dwSize與gargoyle的可執行內存大小一致。我們提供期望的保護屬性給flNewProtect。我們不關心老的保護屬性,但是不幸的是lpflOldProtect不是一個可選的參數。因此我們將將它設為一些空內存。

唯一根據上下文不同的參數是flNewProtect。當gargoyle進入睡眠,我們想修改它為PAGE_READWRITE或0x04。在gargoyle執行前,我們想標記它為PAGE_EXECUTE_READ或0x20。

0x04 棧跳板

注意:如果你不熟悉x86調用約定,本節將比較難以理解。對于新人,可以參考我的文章x86調用約定。

通常,ROP gadget被用來對抗DEP,通過構建調用VirtualProtectEx來標記棧為可執行,然后調用到棧上的一個地址。這在利用開發中經常很有用,當一個攻擊者能寫非可執行內存??梢詫⒁欢〝盗康腞OP gadget放在一起做相當多的事。

不幸的是,我們不能控制我們的alerted線程的上下文。我們能通過pfnCompletionRoutine控制eip,并且線程棧中的指針位于esp+4,即調用函數的第一個參數(WINAPI/__stdcall調用約定)。

幸運的是,我們已經在APC入隊前就執行了,因此我們能在我們的alerted線程中小心的構建一個新的棧(棧跳板)。我們的策略是找到代替esp指向我們棧跳板的ROP gadget。下面的形式的就能工作:

有點詭異,因為函數通常不以pop esp/ret結束,但是由于可變長度的操作碼,Intel x86匯編過程會產生非常密集的可執行內存。不管怎樣,在32位的mshtml.dll的偏移7165405處有這么一個gadget:

注意:感謝Sascha Schirra的Ropper工具。

在我們調用SetWaitableTimer時,這個gadget將設置esp為我們放入lpArgToCompletionRoutine中的任何值。剩下的事就是將lpArgToCompletionRoutine指向一些構造的棧內存。棧跳板看起來如下:

我們設置lpArgToCompletionRoutine為void* VirtualProtectEx參數,以便ROP gadget能ret到執行VirtualProtectEx。當VirtualProtectEx得到這個調用,esp將指向void* return_address。我們可以設置這個為我們的gargoyle。

0x05 gargoyle

讓我們暫停片刻,看下在我們創建定時器和啟動循環之前創建的讀寫Workspace。這個Workspace包含3個主要內容:一些配置幫助gargoyle啟動自身,??臻g和StackTrampoline:

你已經看見了StackTrampoline,和stack是一個內存塊。SetupConfiguration:

在PoC的main.cpp中,SetupCOnfiguration這么設置:

非常簡單。簡單的指向多個Windows函數和一些有用的參數。

現在你有了Workspace的大概印象,讓我們回到gargoyle。一旦棧跳板被VirtualProtectEx調用,gargoyle將執行。這一刻,esp指向old_protections,因為VirtualProtect使用WINAPI/__stdcall約定。

注意我們放入了一個參數(void* setup_config)在StackTrampoline的末尾。這是方便的地方,因為如果它是以__cdecl/__stdcall約定調用gargoyle的第一個參數。

這將使得gargoyle能在內存中找到它的讀寫配置:

現在我們準備好了。Esp指向了Workspace.stack。我們在ebx中保存了Configuration對象。如果這是第一次調用gargoyle,我們將需要建立定時器。我們通過Configuration的initialized字段來檢查這個:

如果gargoyle已經初始化了,我們跳過定時器創建。

注意,在reset_trampoline中,我們重定位了跳板中VirtualProtectEx的地址。在ROP gadget ret后,執行VirtualProtectEx。當它完成后,它在正常的函數執行期間將破環棧上的地址。

你能執行任意代碼。對于PoC,我們彈出一個對話框:

一旦我們完成了執行,我們需要構建調用到VirtualProtectEx,然后WaitForSingleObjectEx。我們實際上構建了兩個調用到WaitForSingleObjectEx,因為APC將從第一個返回并繼續執行。這啟動了我們定義的循環APC:

0x06 測試

PoC的代碼在github上,且你能簡單的測試,但是你必須安裝:

Visual studio 2015 Community,但是其他版本也能用

Netwide Assembler v2.12.02 x64,但是其他版本也能用。確保nasm.exe在你的路徑中。

克隆gargoyle:

  1. git clone https://github.com/JLospinoso/gargoyle.git 

打開Gargoyle.sln并構建。

你必須在和setup.pic相同的目錄運行gargoyle.exe。默認解決方案的輸出目錄是Debug或release。

每15秒,gargoyle將彈框。當你點擊確定,gargoyle將完成VirtualProtectEx/WaitForSingleObjectEx調用。

有趣的是,使用Systeminternal的VMMap能驗證gargoyle的PIC執行。如果消息框是激活的,gargoyle將被執行。反之則沒有只想能夠。PIC的地址在執行前使用stdout打印。

責任編輯:武曉燕 來源: jlospinoso.github.io
相關推薦

2021-05-30 19:29:12

內存Go語言

2022-07-25 15:38:59

Go 語言Go 語言編譯器內存逃逸

2023-01-10 09:18:37

Go內存分配逃逸

2017-10-23 14:08:37

2022-11-24 10:43:33

2023-01-28 08:32:04

Go內存分配

2022-11-30 08:19:15

內存分配Go逃逸分析

2021-08-02 07:57:02

內存Go語言

2023-12-22 07:55:38

Go語言分配策略

2012-02-23 15:44:34

惠普掃描儀

2012-03-15 14:22:54

惠普掃描儀

2011-10-31 16:47:59

惠普掃描儀

2013-10-31 11:29:38

2019-09-16 09:46:55

2019-09-16 09:46:55

對抗反分析檢測逃逸惡意軟件

2019-09-11 15:49:02

入侵檢測反分析逃逸技術

2020-07-21 14:19:18

JVM編程語言

2024-06-19 19:07:53

2012-04-12 16:46:37

惠普掃描儀

2015-12-01 16:13:58

點贊
收藏

51CTO技術棧公眾號

国产色在线观看| 中文字幕亚洲国产| 欧美激情第一页xxx| 欧美亚洲另类色图| 色在线观看视频| 日本少妇一区| 久久www成人_看片免费不卡| 日韩一区二区三| 一区二区三区四区五区精品| 永久免费看片视频教学| 欧美gay视频| 99这里只有精品| 欧美另类老女人| 亚洲欧美日韩三级| 99青草视频在线播放视| 久久久久久久欧美精品| 日韩小视频在线观看| mm1313亚洲国产精品无码试看| 亚洲乱熟女一区二区| 一区二区免费不卡在线| 精品视频一区二区三区免费| 日本不卡二区| 区一区二在线观看| 亚洲精品进入| 精品美女国产在线| 国产一区二区视频在线免费观看| 激情五月婷婷小说| 欧美日韩中出| 亚洲主播在线观看| av一区二区三区免费| 欧美风情第一页| 24小时成人在线视频| 国产精品色一区二区三区| 日韩美女中文字幕| 中文字幕 自拍| www.成人在线视频| 国产精品乱人伦| 久久精品ww人人做人人爽| 国产精品久久久久久99| 三级小说欧洲区亚洲区| 欧美色图在线视频| 日本不卡二区高清三区| 刘玥91精选国产在线观看| 久久精品国产一区二区三| 久久久成人av| 熟妇高潮一区二区| 亚洲人成在线网站| 国产日韩欧美激情| 国产在线久久久| www日韩在线| 欧美丝袜丝交足nylons172| 欧美精品一二三| 久久这里只有精品8| 欧美熟女一区二区| 久久久青草婷婷精品综合日韩| 久久久久久久久爱| 99久久精品免费视频| 嫩草国产精品入口| 欧美在线观看视频一区二区三区| 亚洲一卡二卡三卡| www.av在线| 国产成人午夜精品5599| 欧美一级高清免费| 成人做爰视频网站| 97视频精品| 亚洲第一黄色网| 99视频精品免费| 欧洲av不卡| 91久久精品国产91性色tv| 熟女视频一区二区三区| 视频一区二区免费| 九色porny丨国产精品| 久久久噜久噜久久综合| 午夜影院黄色片| 久久精品亚洲成在人线av网址| 日本乱码高清不卡字幕| 一级特黄性色生活片| 国产精品探花在线| 中文字幕电影一区| 国产伦理一区二区三区| 国产又粗又猛视频| 午夜在线一区| 色综合久综合久久综合久鬼88| 日本aⅴ在线观看| 国产欧美高清视频在线| 精品国产网站在线观看| 国产又大又黄又猛| 久草在线资源福利站| 亚洲日穴在线视频| 美乳视频一区二区| 亚洲福利在线观看视频| 日本少妇一区二区| 91精品国产91久久久久福利| 午夜精品福利在线视频| 极品中文字幕一区| 久久夜精品香蕉| 日韩一级av毛片| 97国产成人高清在线观看| 久久久国产一区| 日本一二三区不卡| 自拍日韩欧美| 国产91精品久久久久久| 中文字幕在线日亚洲9| 免费在线播放第一区高清av| 国产一区欧美二区三区| 欧美一级免费片| 国产女主播一区| 欧美不卡三区| av毛片在线看| 亚洲欧美成人一区二区三区| 在线国产伦理一区| 大香伊人中文字幕精品| 欧美视频精品在线观看| 动漫美女无遮挡免费| 国产精品久久久久久久久久久久久久久 | 亚洲天堂网在线观看视频| 亚洲福利专区| 国产精品爽黄69天堂a| 午夜毛片在线观看| 精品无人码麻豆乱码1区2区| 国产欧亚日韩视频| 婷婷丁香一区二区三区| 亚洲色图清纯唯美| 国产一级不卡毛片| 久久久精品国产**网站| 久久久国产成人精品| 国产又粗又猛又爽又| 三级欧美韩日大片在线看| 高清欧美一区二区三区| 一区二区日韩在线观看| 久久久久亚洲综合| 日韩高清av| 69视频在线观看| 欧美午夜xxx| wwwxx日本| 牛牛国产精品| 午夜精品一区二区三区在线| 五月婷婷开心网| 国产精品99久久久| 欧美aaa在线观看| 污污视频在线| 精品动漫一区二区三区| 青青草精品在线| 国产一区二区三区亚洲| 国产丝袜一区二区三区| 精品无码人妻一区二区免费蜜桃| 久久香蕉国产| 国产精品久久久久91| 国产口爆吞精一区二区| 成人av免费在线观看| 欧美重口乱码一区二区| 黄色软件视频在线观看| 欧美伊人久久大香线蕉综合69| 中文字幕av网址| 欧美a级片视频| 国产美女久久精品| 永久免费在线观看视频| 亚洲电影在线播放| 在线免费视频a| heyzo久久| 欧美激情中文网| 亚洲奶汁xxxx哺乳期| 亚洲午夜影视影院在线观看| 午夜精品在线免费观看| 成人久久综合| 国产精品吴梦梦| h片在线免费| 日韩欧美中文字幕在线播放| 黄色三级视频片| 精品国产视频| 91精品久久久久久| 国产91在线视频蝌蚪| 日韩一级成人av| 国产在线拍揄自揄拍无码视频| 日本在线播放一区二区三区| 午夜精品区一区二区三| 国精一区二区三区| 亚洲电影免费观看高清完整版在线观看 | 日韩亚洲精品视频| 国产视频在线一区| 久久久久久久久蜜桃| 黄色免费网址大全| 久久久国产精品| 国产精品福利观看| 免费观看成人高潮| 在线精品视频小说1| 在线观看成人动漫| 米奇777在线欧美播放| 日韩精品资源| 免费观看性欧美大片无片| 久久青草福利网站| 成人在线观看一区| 精品国产免费人成电影在线观看四季 | 99精品在线视频观看| 午夜私人影院久久久久| 成人免费黄色av| 一区二区自拍| 少妇免费毛片久久久久久久久| 日本一区二区三区播放| 日韩在线资源网| 亚洲免费视频二区| 久久久久国产精品麻豆| 色天使在线观看| 日韩视频三区| 国产精品一级久久久| 色尼玛亚洲综合影院| 久久人人爽亚洲精品天堂| 性欧美18一19性猛交| 亚洲日本乱码在线观看| 尤物网站在线观看| 亚洲啪啪91| 国产视频在线观看一区| 成人av色网站| 97精品在线视频| 国产精品一区二区三区视频网站| 国产偷国产偷亚洲清高网站| 99精品视频在线播放免费| 欧美亚洲愉拍一区二区| 日韩成年人视频| 亚洲欧洲在线观看av| 欧美日韩久久婷婷| 亚洲一区 二区 三区| 欧美亚洲另类久久综合| 美女18一级毛片一品久道久久综合| 日韩理论片久久| www.av日韩| 欧美猛男gaygay网站| 亚洲欧美综合自拍| 亚洲不卡av一区二区三区| 亚洲一级生活片| 日本一区二区成人| 扒开jk护士狂揉免费| 日本美女视频一区二区| 欧美精品一区二区三区三州| 思热99re视热频这里只精品 | 国产99久久久| 国产亚洲成av人在线观看导航| 日本黄色一级网站| 国产在线精品免费| www.日本在线播放| 国内精品久久久久久久影视麻豆| 极品校花啪啪激情久久| 影视一区二区三区| 欧洲成人性视频| 香蕉视频在线免费看| 中文字幕不卡在线视频极品| 酒色婷婷桃色成人免费av网| 欧美日韩在线综合| 亚洲天堂视频在线播放| 色哟哟欧美精品| 极品国产91在线网站| 自拍偷拍国产精品| 欧日韩不卡视频| 成人精品高清在线| 亚洲v在线观看| 国产·精品毛片| 日本新janpanese乱熟| 久久综合狠狠| 午夜免费精品视频| 日本伊人色综合网| 岛国毛片在线播放| 午夜在线视频观看日韩17c| 无码人妻丰满熟妇区96| 91精品国产自产在线观看永久∴| 亚洲一区三区电影在线观看| 外国成人免费视频| 蜜桃网站成人| 久久99视频| 成人黄动漫网站免费| 第四色中文综合网| 激情视频一区二区| 国产调教一区二区三区| 视频一区二区在线观看| 婷婷亚洲图片| 免费看毛片的网址| 图片小说视频色综合| 日韩精品一区二区三区电影| 国产欧美一区二区三区精品观看 | 日韩精品看片| 精品一卡二卡三卡四卡日本乱码 | 久久精品国产一区二区三区免费看 | 国产精品日韩欧美一区二区三区| 欧美大片网址| 午夜午夜精品一区二区三区文| **女人18毛片一区二区| 欧美人成在线观看| 男人的天堂久久精品| 俄罗斯av网站| 蜜臀久久久99精品久久久久久| 不卡中文字幕在线观看| 久久一区视频| 三级一区二区三区| 91原创在线视频| 蜜臀aⅴ国产精品久久久国产老师| bt欧美亚洲午夜电影天堂| 国产aⅴ激情无码久久久无码| 国产精品理伦片| 日本在线免费观看| 欧美视频一区二区在线观看| 亚洲国产精品久久久久爰性色| 国产午夜精品理论片a级探花| 久cao在线| 热re91久久精品国99热蜜臀| 996久久国产精品线观看| 国产区一区二区| 色欧美自拍视频| 国产女主播自拍| 日本va欧美va精品发布| 在线观看一区二区三区四区| 中文字幕国产精品一区二区| 少妇一级淫片免费放中国| 欧美乱妇23p| 国产午夜在线视频| 亚洲午夜激情免费视频| 黄色av网站在线免费观看| 亚洲久久久久久久久久久| 你懂的在线视频| 欧美极度另类性三渗透| 日韩精品一页| 亚洲va欧美va国产综合剧情 | 欧美在线影院一区二区| 亚洲国产综合网| xvideos成人免费中文版| 欧美调教sm| 国产高清一区视频| 欧美激情影院| 无码人妻精品一区二区蜜桃百度| 国产专区一区| 999久久久精品视频| 国产日产亚洲精品系列| 中文字幕精品三级久久久| 精品免费日韩av| 日本中文字幕一区二区有码在线 | 亚洲91视频| 国产区二区三区| 久久精品水蜜桃av综合天堂| 成年人免费看毛片| 日本乱码高清不卡字幕| 天天av综合网| 视频在线一区二区| 欧美色片在线观看| 亚洲综合精品伊人久久| 91日韩免费| 国产美女18xxxx免费视频| 国产精品剧情在线亚洲| 最新黄色网址在线观看| 一区二区三区视频在线| 2024最新电影在线免费观看| 成人av资源在线播放| 91麻豆精品激情在线观看最新| 久久免费看av| 99在线|亚洲一区二区| 亚洲自拍偷拍精品| 精品久久久久久久久久久| 天堂国产一区二区三区| 18一19gay欧美视频网站| 日韩高清在线免费观看| 久久久久久久久久久久久国产精品| 精品影院一区二区久久久| 亚洲女人毛茸茸高潮| 午夜电影久久久| 亚洲aaaaaaa| 久久天天躁日日躁| 精品国产一区二| 日本一级黄视频| 99re亚洲国产精品| 日批视频免费在线观看| 在线播放日韩欧美| 2020国产精品小视频| 欧美黄色免费网址| 99久久精品免费精品国产| 国产专区第一页| 中文字幕亚洲综合| 日本h片久久| 成人短视频在线看| 成av人片一区二区| 一级一片免费看| 久久精品国产v日韩v亚洲| 日韩中文字幕在线一区| 国产96在线 | 亚洲| 国产欧美一区二区三区在线老狼 | 日韩欧美一二区| av网站在线免费播放| 91精品国产高清久久久久久91裸体| 国际精品欧美精品| 男人添女人下面免费视频| 亚洲美女少妇撒尿| 香蕉视频网站在线| 国产免费一区二区三区在线能观看| 午夜精品久久| 中文字幕第4页| 制服丝袜亚洲播放| 日韩在线免费电影| 翡翠波斯猫1977年美国| 久久综合影音| 欧美人妻精品一区二区三区| 亚洲精品国产品国语在线| 国产理论电影在线| 亚洲精品在线免费看| 男男视频亚洲欧美|