木马查杀及后门
轉自互聯網
0x00 木馬及后門學習
????后門木馬又稱特洛伊木馬,英文叫做“Trojan horse”,其名稱取自希臘神話的特洛伊木馬記,它是一種基于遠程控制的黑客工具。在黑客進行的各種攻擊行為中,木馬都起到了開路先鋒的作用。
1、特洛伊木馬
????特洛伊木馬屬于客戶/服務模式。它分為兩大部分,即客戶端和服務端。
?
??? 其原理是一臺主機提供服務(服務器),另一臺主機接受服務(客戶機),作為服務器的主機一般會打開一個默認的端口進行監聽。如果有客戶機向服務器的這一端口提出連接請求,服務器上的相應程序就會自動運行,來應答客戶機的請求。這個程序被稱為守護進程。以大名鼎鼎的木馬冰河為例,被控制端可視為一臺服務器,控制端則是一臺客戶機,服務端程序G_Server.exe是守護進程,G_Client.exe是客戶端應用程序。
2、Shell
Shell的中文意思為“殼”,它管理著用戶與操作系統之間的交互,可以把它理解為一個命令解釋器。它接收用戶命令,然后調用相關的應用程序來執行。
3、CmdShell
CmdShell在這里可以稱做系統后門,是黑客利用溢出或其他手段,獲取目標計算機命令行的遠程控制的權利。(Cmd即:用戶在運行中輸入“cmd”出現的命令行)
CmdShell大多是當用戶計算機存在漏洞時,黑客利用攻擊工具進行遠程進攻,導致計算機崩潰,從而丟失系統的控制權限(即CmdShell)。
4、雙關聯木馬
木馬在運行后生成兩套完全相同的程序(名稱和大小不一定一樣),文中的“wlloginproxy.exe”程序和?“services.exe”程序會互相掃描(每0.1秒掃描一次),如果發現對方沒有啟動或者運行時錯誤,其中一個木馬程序會將自身復制,從新制造一個新的木馬運行,導致用戶無法完全刪除。
5、木馬的隱藏方式
????為進一步了解木馬,我們來看看它們的隱藏方式,木馬隱藏方法主要有以下幾種:
- 在任務欄里隱藏
????這是最基本的。如果在windows的任務欄里出現一個莫名其妙的圖標,傻子都會明白怎么回事。在VB中,只要把form的Viseble屬性設置為False,ShowInTaskBar設為False程序就不會出現在任務欄里了。
- 在任務管理器里隱藏
???查看正在運行的進程最簡單的方法就是按下ctrl+alt+del時出現的任務管理器。如果你按下ctrl+alt+del后可以看見一個木馬程序在運行,那么這肯定不是什么好的木馬。所以,木馬千方百計的偽裝自己,使自己不出現在任務管理器里。木馬發現把自己設為“系統服務”就可以輕松的騙過去。因此希望通過按ctrl+alt+del發現木馬是不大現實的。
- 端口
?? 一臺機器由65536個端口,你會注意這么多端口么?而木馬就很注意你的端口。如果你稍微留意一下,不難發現,大多數木馬使用的端口在1024以上,而且呈越來越大的趨勢。當然也有占用1024以下端口的木馬。但這些端口是常用端口,占用這些端口可能會造成系統不正常。這樣的話,木馬就會很容易暴露。也許你知道一些木馬占用的端口,你或許會經常掃描這些端口,但現在的木馬都提供端口修改功能,你有時間掃描65536個端口么?
- 木馬的加載方式隱蔽
????木馬加載的方式可以說千奇百怪,無奇不有。但殊途同歸,都為了達到一個共同的目的,那就是使你運行木馬的服務端程序。如果木馬不加任何偽裝。就告訴你這是木馬,你會運行它才怪呢。而隨著網站互動化進程的不斷進步,越來越多的東西可以成為木馬的傳播介質,JavaScript、VBScript、ActiveX、XLM……。3-幾乎www每一個新功能都會導致木馬的快速進化。
- 木馬的命名
??? 木馬服務端程序的命名也有很大的學問。如果你不做任何修改的話,就使用原來的名字。誰不知道這是個木馬程序呢?所以木馬的命名也是千奇百怪。不過大多是改為和系統文件名差不多的名字,如果你對系統文件不夠了解,那可就危險了。例如有的木馬把名字改為window.exe,如果不告訴你這是木馬的話,你敢刪除么?還有的就是更改一些后綴名,比如把dll改為dl等,你不仔細看的話,你會發現么?
- 最新隱身技術
????目前,除了以上所常用的隱身技術,又出現了一種更新、更隱蔽的方法。那就是修改虛擬設備驅動程序(vxd)或修改動態連接庫(DLL)。這種方法與一般方法不同,它基本上擺脫了原有的木馬模式—監聽端口,而采用替代系統功能的方法(改寫vxd或DLL文件),木馬會將修改后的DLL替換系統已知的DLL,并對所有的函數調用進行過濾。對于常用的調用,使用函數轉發器直接轉發給被替換的系統DLL,對于一些事先約定好的特種情況,DLL會執行一些相應的操作。實際上這樣的木馬多只是使用DLL進行監聽,一旦發現控制端的連接請求就激活自身,綁在一個進程上進行正常的木馬操作。這樣做的好處是沒有增加新的文件,不需要打開新的端口,沒有新的進程,使用常規的方法監測不到它,在正常運行時木馬幾乎沒有任何癥狀,而一旦木馬的控制端向被控制端發出特定的信息后,隱藏的程序就立即開始運作。
0x01 木馬查殺方法
1、檢查網絡連接情況
? 由于不少木馬會主動偵聽端口,或者會連接特定的IP和端口,所以我們可以在沒有程序連接網絡的情況下,通過檢查網絡連接情況來發現木馬的存在。
??? 具體的步驟是點擊“開始”->“運行”->“cmd”,然后輸入?netstat -an?這個命令能看到所有和自己電腦建立連接的IP以及自己電腦偵聽的端口,它包含四個部分——proto(連接方式)、local address(本地連接地址)、foreign address(和本地建立連接的地址)、state(當前端口狀態)。通過這個命令的詳細信息,我們就可以完全監控電腦的網絡連接情況。
2、查看目前運行的服務
? 服務是很多木馬用來保持自己在系統中永遠能處于運行狀態的方法之一。我們可以通過點擊“開始”->“運行”->“cmd”,然后輸入“net start”來查看系統中究竟有什么服務在開啟,如果發現了不是自己開放的服務,我們可以進入“服務”管理工具中的“服務”,找到相應的服務,停止并禁用它。
3、檢查系統啟動項
由于注冊表對于普通用戶來說比較復雜,木馬常常喜歡隱藏在這里。
??? 檢查注冊表啟動項的方法如下:點擊“開始”->“運行”->“regedit”,然后檢查HKEY_LOCAL_MACHINE\Software \Microsoft\Windows\CurrentVersion下所有以“run”開頭的鍵值;HKEY_CURRENT_USER \Software\Microsoft\Windows\CurrentVersion下所有以“run”開頭的鍵值;HKEY-USERS \.Default\Software\Microsoft\Windows\CurrentVersion下所有以“run”開頭的鍵值。
Windows安裝目錄下的System.ini也是木馬喜歡隱蔽的地方。打開這個文件看看,在該文件的[boot]字段中,是不是有shell=Explorer.exe file.exe這樣的內容,如有這樣的內容,那這里的file.exe就是木馬程序了!
????4、檢查系統帳戶
? 惡意的攻擊者喜歡在電腦中留一個賬戶來控制你的計算機。他們采用的方法就是激活一個系統中的默認賬戶,但這個賬戶卻很少用的,然后把這個賬戶的權限提升為 管理員權限,這個帳戶將是系統中最大的安全隱患。惡意的攻擊者可以通過這個賬戶任意地控制你的計算機。針對這種情況,可以用以下方法對賬戶進行檢測。
點擊“開始”->“運行”->“cmd”,然后在命令行下輸入net user,查看計算機上有些什么用戶,然后再使用“net user用戶名”查看這個用戶是屬于什么權限的,一般除了Administrator是administrators組的,其它都不應該屬于administrators組,如果你發現一個系統內置的用戶是屬于administrators組的,那幾乎可以肯定你被入侵了。快使用“net user用戶名/del”來刪掉這個用戶吧!
5、運行任務管理器,殺掉木馬進程。
?(一)、檢查注冊表中RUN、RUNSERVEICE等幾項,先備份,記下可以啟動項的地址,?再將可疑的刪除。
???(二)、刪除上述可疑鍵在硬盤中的執行文件。
???(三)、一般這種文件都在WINNT,SYSTEM,SYSTEM32這樣的文件夾下,他們一般不會單獨存在,很可能是有某個母文件復制過來的,檢查C、D、E等盤符下有沒有可疑的.exe,.com或.bat文件,有則刪除之。
???(四)、檢查注冊表
HKEY_LOCAL_MACHINE和HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main?
中的幾項(如Local Page),如果被修改了,改回來就可以。
?(五)、檢查?HKEY_CLASSES_ROOT\txtfile\shell\open\command?和 ? ?HKEY_CLASSES_ROOTxtfileshellopencommand?等幾個常用文件類型的默認打開程序是否被更改。這個一定要改回來。?很多病毒就是通過修改.txt文件的默認打開程序讓病毒在用戶打開文本文件時加載的。
???6、利用工具
查殺木馬的工具有LockDown、The Clean、木馬克星、金山木馬專殺、木馬清除大師、木馬分析專家等,其中有些工具,如果想使用全部功能,需要付一定的費用,木馬分析專家是免費授權使用。
?
0x02 如何查找電腦內的木馬?
? ?1、集成到程序中
?? 其實木馬也是一個服務器-客 戶端程序,它為了不讓用戶能輕易地把它刪除,就常常集成到程序里,一旦用戶激活木馬程序,那么木馬文件和某一應用程序捆綁在一起,然后上傳到服務端覆蓋原 文件,這樣即使木馬被刪除了,只要運行捆綁了木馬的應用程序,木馬又會被安裝上去了。綁定到某一應用程序中,如綁定到系統文件,那么每一次Windows啟動均會啟動木馬。
???2、隱藏在配置文件中
?? 木馬實在是太狡猾,知道多數用戶平時使用的是圖形化界面的操作系統,對于那些已經不太重要的配置文件大多數是不聞不問了,這正好給木馬提供了一個藏身之 處。而且利用配置文件的特殊作用,木馬很容易就能在大家的計算機中運行、發作,從而偷窺或者監視大家。不過,現在這種方式不是很隱蔽,容易被發現,所以在Autoexec.bat和Config.sys中加載木馬程序的并不多見,但也不能因此而掉以輕心哦。
?3、潛伏在Win.ini中
?? 木馬要想達到控制或者監視計算機的目的,必須要運行,然而沒有人會傻到自己在自己的計算機中運行這個該死的木馬。當然,木馬也早有心理準備,知道用戶不會幫助它工作,因此它必須找一個既安全又能在系統啟動時自動運行的地方,于是潛伏在Win.ini中是木馬感覺比較愜意的地方。大家不妨打開Win.ini來看看,在它的[windows]字段中有啟動命令“load=”和?“run=”,在一般情況下“=”后面是空白的,如果有后跟程序,比方說是這個樣子:run=c:windows ile.exe load=c:windows ile.exe這時你就要小心了,這個file.exe很可能是木馬哦。
?? ? ? 4、偽裝在普通文件中
??? 這個方法出現得比較晚,不過現在很流行,對于不熟練的windows操作者,很容易上當。
??? 具體方法是把可執行文件偽裝成圖片或文本----在程序中把圖標改成Windows的默認圖片圖標,?再把文件名改為*.jpg.exe,?由于Win98默認設置是"不顯示已知的文件后綴名",文件將會顯示為*.jpg,?不注意的人一點這個圖標就中木馬了(如果你在程序中嵌一張圖片就更完美了)。
????5、內置到注冊表中
??? 上面的方法讓木馬著實舒服了一陣,既沒有人能找到它,又能自動運行,真是快哉!然而好景不長,人類很快就把它的馬腳揪了出來,并對它進行了嚴厲的懲罰!但 是它還心有不甘,總結了失敗教訓后,認為上面的藏身之處很容易找,現在必須躲在不容易被人發現的地方,于是它想到了注冊表!的確注冊表由于比較復雜,木馬 常常喜歡藏在這里快活,趕快檢查一下,有什么程序在其下,睜大眼睛仔細看:
HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersion下所有以run開頭的鍵值;HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersion下所有以run開頭的鍵值;HKEY-USERS.DefaultSoftwareMicrosoftWindowsCurrentVersion下所有以run開頭的鍵值。?
轉載于:https://www.cnblogs.com/-qing-/p/10841780.html
總結
- 上一篇: dnf脚本的研究
- 下一篇: 强大的诺顿扼杀了alexa工具条