日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

相信大家都有這么一個經歷,我們使用電腦,在某些來歷不明的網站上下載一些程序,然后打開這些程序的時候,可能會出現(xiàn)以下的情況。

一個木馬病毒是如何誕生的?

 

嗯沒錯,你電腦中的殺毒軟件會給你發(fā)出溫馨的提示,提醒你該程序可能含有木馬病毒,這些病毒可能損害你的計算機。那么這些木馬病毒的本質是什么呢?他們是怎么攻擊我們的電腦的呢?我們今天就來探討下這個問題!

首先我們先來認識一下動態(tài)鏈接庫的概念,DLL是Dynamic Link Library的縮寫,意為動態(tài)鏈接庫。在windows中,許多應用程序并不是一個完整的可執(zhí)行文件,它們被分割成一些相對獨立的動態(tài)鏈接庫,即DLL文件,放置于系統(tǒng)中。

Windows系統(tǒng)就是由許多的動態(tài)鏈接庫(DLL文件)構成的。它們是Windows系統(tǒng)最基本的應用程序。

下面就是我們的Windows操作系統(tǒng)的一些動態(tài)鏈接庫。

一個木馬病毒是如何誕生的?

 

簡單來說,動態(tài)鏈接庫里面其實就是一個一個的函數,Windows也是一個應用程序,它被分割成了許許多多的動態(tài)鏈接庫。

比較大的應用程序都由很多模塊(動態(tài)鏈接庫)組成,這些模塊分別完成相對獨立的功能,它們彼此協(xié)作來完成整個軟件系統(tǒng)的工作。下圖為微信應用程序中所調用的動態(tài)鏈接庫。

一個木馬病毒是如何誕生的?

 

Windows 系統(tǒng)平臺上提供了一種完全不同的較有效的編程和運行環(huán)境,你可以將獨立的程序模塊創(chuàng)建為較小的 DLL 文件,并可對它們單獨編譯和測試。在運行時,只有當 EXE 程序確實要調用這些 DLL 模塊的情況下,系統(tǒng)才會將它們裝載到內存空間中。不用的時候,系統(tǒng)將它們給從內存中卸載掉。

這種方式不僅減少了 EXE 文件的大小和對內存空間的需求,而且使這些 DLL 模塊可以同時被多個應用程序使用。Windows 自己就將一些主要的系統(tǒng)功能以 DLL 模塊的形式實現(xiàn)。

因此,讀到這里,我相信大家應該明白了,為什么殺毒軟件會給你提示某個程序含有木馬病毒,就是因為該病毒程序中可能會給你原本正常運行的其他程序注入DLL,讓你的正常程序調用病毒程序攜帶的DLL文件,以導致你的正常程序“中毒”。

一個木馬病毒是如何誕生的?

 

DLL的編寫與語言沒有任何關系,所以我們用VS2017創(chuàng)建一個動態(tài)鏈接庫,命名為MyDll,他就是我們要寫的病毒DLL文件。

一個木馬病毒是如何誕生的?

 

然后在dllmain.cpp中寫我們的代碼,我們的代碼很簡單,直接寫上一個alert函數,功能是:當我們的病毒DLL文件被應用程序加載時,直接彈出一個彈窗。

一個木馬病毒是如何誕生的?

 

OK,最后編譯生成我們的DLL文件。

 

編寫完DLL文件之后,我們還要寫一個exe程序,該exe程序就是病毒程序的主體,它完成核心的功能:將我們的病毒DLL寫進某個正常運行的應用程序讓該正常的應用程序調用我們的DLL代碼,那么這就是一件很危險的事情了,讓我們的正常運行的程序調用未知的DLL代碼,后果可想而知。這種技術就是DLL遠線程注入技術

我們的病毒程序會強制給目標進程創(chuàng)建一個線程,線程的任務是:將我們的病毒木馬DLL加載進目標進程,讓目標進程執(zhí)行DLL代碼。

那么,代碼如何寫呢?

我們還是使用VS2017編寫,創(chuàng)建一個控制臺程序,命名為dll_inject。

一個木馬病毒是如何誕生的?

 

然后按照剛才提到的思路編寫代碼,這沒什么難度,查看MSDN,調用Win32API即可實現(xiàn)。

一個木馬病毒是如何誕生的?

 

主函數中調用我們的dll注入攻擊函數dll_inject,我們用來攻擊一下PC版的微信,查看用戶管理器,得知微信的PID為17544,以第一個參數傳進去,第二個參數即我們要注入的DLL文件的路徑。

一個木馬病毒是如何誕生的?

 

編譯之后,得到我們的dll注入主程序。

一個木馬病毒是如何誕生的?

 

雙擊運行,看一下攻擊的結果:

可以看到,微信進程已經被成功注入了我們的病毒DLL文件了,也彈窗了,彈窗就證明我們的病毒DLL被微信加載成功。

一個木馬病毒是如何誕生的?

 


一個木馬病毒是如何誕生的?

 

所以,總結一下,總體思路是:

1)編寫一個病毒DLL,完成我們想要干的壞事。

2)編寫一個應用程序exe,強制讓遠程的進程創(chuàng)建一個線程,執(zhí)行加載DLL文件的操作。

3)遠程進程加載成功我們寫的病毒DLL之后,就表示我們的DLL已經成功注入遠程進程中了,也可以說是感染到了遠程進程了。

DLL的發(fā)明給我們帶來了諸多便利和優(yōu)雅,但是也可能會給我們帶來災難性的后果,我們的世界就是黑和白的斗爭,然后在斗爭中不斷地發(fā)展。

分享到:
標簽:木馬病毒
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰(zhàn)2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定