
電腦病毒一旦入侵到我們的電腦中,需要加載才能造成破壞,因?yàn)橐粋€(gè)沒(méi)有加載啟動(dòng)的病毒是沒(méi)有什么危害的。那么,病毒在進(jìn)入電腦系統(tǒng)之后,不通過(guò)用戶雙擊,會(huì)有怎樣的辦法讓自己自動(dòng)加載執(zhí)行呢?
我們今天就來(lái)看一下病毒為了能讓自己可以自動(dòng)加載,一般都會(huì)利用哪些方法。了解了病毒自動(dòng)加載啟動(dòng),小伙伴們就能夠掌握如何發(fā)現(xiàn)和清除病毒。
一般來(lái)說(shuō)病毒的自動(dòng)加載技術(shù)主要是有兩種方式:
1、跟隨系統(tǒng)的啟動(dòng)而加載。
2、跟隨程序的啟動(dòng)而加載。
我們?cè)敿?xì)來(lái)看一下:
一、跟隨系統(tǒng)的啟動(dòng)而加載
惡意程序跟隨系統(tǒng)自動(dòng)啟動(dòng)的主要途徑有:
1、autoexec.bat
可能很多人都不認(rèn)識(shí)這個(gè)文件了。在DOS時(shí)代這可是系統(tǒng)啟動(dòng)最基本的三個(gè)文件之一(你們還知道另外兩個(gè)是什么嗎?答案見(jiàn)本文最后),這是系統(tǒng)啟動(dòng)的批命令文件,在Win9x時(shí)代,它仍然是重要的啟動(dòng)文件之一。從windows ME時(shí)代開(kāi)始就基本沒(méi)什么用了,在基于NT內(nèi)核的現(xiàn)代Windows中,它仍然存在,但是只剩下了兼容意義已經(jīng)沒(méi)有作用,可以刪除。
現(xiàn)在的惡意程序也不會(huì)通過(guò)這里自啟動(dòng)了,這一項(xiàng)可以忽略了。
2、win.ini
win.ini,是Windows系統(tǒng)的一個(gè)基本系統(tǒng)配置文件。WIN.INI文件包含若干小節(jié),每一節(jié)由一組相關(guān)的設(shè)定組成。文件配保存了諸如影響Windows操作環(huán)境的部分、控制系統(tǒng)界面顯示形式及窗口和鼠標(biāo)器的位置、聯(lián)結(jié)特定的文件類型與相應(yīng)的應(yīng)用程序、列出有關(guān)HELP窗口及對(duì)話窗的默認(rèn)尺寸、布局、文本顏色設(shè)置等等的選項(xiàng)。是系統(tǒng)配置不可缺少的文件。
這個(gè)文件從WINDOWS 3.X系統(tǒng)中出現(xiàn)的一個(gè)配置文件,從windows 95開(kāi)始其功能慢慢轉(zhuǎn)移到了注冊(cè)表中。現(xiàn)在的系統(tǒng)中還有這個(gè)文件,默認(rèn)在c:windows目錄下,但也僅限于同16位系統(tǒng)的兼容,基本沒(méi)什么用了。
在原來(lái)的WIN.ini文件中,有一個(gè)windows字節(jié):
[windows]
LOAD=
RUN=
如果需要開(kāi)機(jī)啟動(dòng),則在LOAD=和RUN=后面加上要啟動(dòng)的程序名即可。到注冊(cè)表時(shí)代后,這兩個(gè)位置都移到了注冊(cè)表中。
3、LOAD
原來(lái)在win.ini中的LOAD鍵值在windows 9x后被移入注冊(cè)表。
對(duì)應(yīng)的注冊(cè)表位置(win10以前版本):
HKEY_CURRENT_USERSoftwareMicrosoftWindowsNT CurrentVersionWindowsload
如下圖,病毒將自身加載到LOAD中自動(dòng)啟動(dòng):
進(jìn)入WIN10之后,注冊(cè)表中這一項(xiàng)也取消了。
隱藏程度:★★★
應(yīng)用程度:★★★
4、RUN
原來(lái)在win.ini中的RUN鍵值在windows 9x后被移入注冊(cè)表。
注冊(cè)表中對(duì)應(yīng)位置:
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun
HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunOnce
HKEY_LOCAL_macHINESOFTWAREMicrosoftWindowsCurrentVersionRun
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnce
這是絕大多數(shù)惡意程序自啟動(dòng)常用的位置。
隱藏程度:★★★
應(yīng)用程度:★★★★★
5、開(kāi)機(jī)啟動(dòng)菜單
windows開(kāi)始菜單——>啟動(dòng)。正常情況下,我們會(huì)把想要開(kāi)機(jī)啟動(dòng)的程序放在這里。
在win10中啟動(dòng)菜單取消了,但并不代表沒(méi)有這一項(xiàng)了。在運(yùn)行中輸入shell:startup,就可以直接打開(kāi)啟動(dòng)菜單目錄了。把想要啟動(dòng)的程序(如惡意程序)放入該目錄,就會(huì)在開(kāi)機(jī)時(shí)自動(dòng)執(zhí)行。
但是這里過(guò)于明顯,很容易被發(fā)現(xiàn),并不是病毒最理想的藏身地,所以實(shí)際工作很少有病毒藏身在這里,但也是我們檢查時(shí)候也必須要檢查到。
隱藏程度:★
應(yīng)用程度:★
6、system.ini
system.ini這個(gè)INI文件定義了有關(guān)WINDOWS系統(tǒng)所需的模塊,相關(guān)的鍵盤(pán)、鼠標(biāo)、顯卡、多媒體的驅(qū)動(dòng)程序、標(biāo)準(zhǔn)字體、和shell程序,這里定義的程序在啟動(dòng)WINDOWS時(shí)都要被加載,因此是不可缺少的。同win.ini文件一樣,現(xiàn)在這個(gè)文件也基本上不用了,所有內(nèi)容都轉(zhuǎn)移到了注冊(cè)表中,目前之所以還能看到,只是為了向下兼容,默認(rèn)在c:windows目錄下。
該文件的[Boot]域中有一個(gè)值:
Shell=Explorer.exe
Shell外殼指的是可視化的用戶資源管理界面,默認(rèn)值Explorer.exe,即顯示資源管理器、“我的電腦”、文件夾、桌面、開(kāi)始菜單、任務(wù)欄、托盤(pán)的程序。惡意程序可能會(huì)修改該值或者在其后添加其他程序的路徑,即使在安全模式也會(huì)啟動(dòng)。比如著名的尼姆達(dá)病毒,感染后該鍵值就會(huì)被改為:
Shell=explorer.exe admin.exe -double
自從2000和XP以后的操作版本中,該值被移入注冊(cè)表。
7、shell外殼程序
shell外殼程序設(shè)置原來(lái)在system.ini文件中,自從2000和XP以后的操作版本中,該值被移入注冊(cè)表:
HKEY_CURRENT_USERSoftwareMicrosoftWindowsNT CurrentVersionWinlogonshell=
當(dāng)我們從任務(wù)管理器結(jié)束Explorer.exe,或者使用殺毒軟件掃描病毒后,可看到桌面只剩一張壁紙,文件夾界面全體消失,應(yīng)用程序窗口仍在。如果開(kāi)機(jī)進(jìn)入桌面后出現(xiàn)這種情況,說(shuō)明Explorer.exe程序被修改了或在注冊(cè)表此項(xiàng)被阻止啟動(dòng)了。這時(shí)先可試著從資源管理器運(yùn)行explorer,不行的話從別人電腦里拷貝explorer.exe到Windows文件夾覆蓋,同時(shí)還要進(jìn)入這里查看Shell的默認(rèn)值Explorer.exe有沒(méi)有被篡改,后面有沒(méi)有被加上“尾巴”即病毒附著在Explorer.exe上面的加載項(xiàng)。
隱藏程度:★★★★
應(yīng)用程度:★★★
8、系統(tǒng)服務(wù)
系統(tǒng)服務(wù)(system services)是指執(zhí)行指定系統(tǒng)功能的程序、例程或進(jìn)程,以便支持其他程序,尤其是底層(接近硬件)程序。
系統(tǒng)服務(wù)一般在后臺(tái)運(yùn)行。與用戶運(yùn)行的程序相比,服務(wù)不會(huì)出現(xiàn)程序窗口或?qū)υ捒颍挥性谌蝿?wù)管理器中才能觀察到它們的身影,系統(tǒng)服務(wù)和普通的應(yīng)用程序有一個(gè)根本的區(qū)別:Service程序可以在無(wú)用戶登錄和用戶已經(jīng)注銷的情況下運(yùn)行,而應(yīng)用程序在沒(méi)有用戶注銷的時(shí)候是會(huì)被終止的。
可以在計(jì)算機(jī)管理—>服務(wù)中查看系統(tǒng)服務(wù),或者在運(yùn)行中執(zhí)行services.msc命令查看。
系統(tǒng)服務(wù)的級(jí)別較應(yīng)用程序高,不容易被殺毒軟件殺掉,所以病毒往往會(huì)通過(guò)注冊(cè)為系統(tǒng)服務(wù)或者驅(qū)動(dòng)的方式來(lái)達(dá)到自我保護(hù)的目的(后來(lái)講到病毒的自我保護(hù)技術(shù)的時(shí)候會(huì)提到)。
隱藏程度:★★★★
應(yīng)用程度:★★★
9、userinit.exe
當(dāng)“歡迎使用”或“正在加載個(gè)人配置”的窗口飄過(guò)后,我們打開(kāi)任務(wù)管理器,可以看到這個(gè)Userinit.exe進(jìn)程逗留了很久方才退出,它就是用戶個(gè)人配置初始化程序。其默認(rèn)值是C:WINDOWSsystem32\userinit.exe,如果這項(xiàng)被修改,加載個(gè)人配置時(shí)就會(huì)出現(xiàn)問(wèn)題,比如出現(xiàn)反復(fù)注銷進(jìn)不去系統(tǒng)的情況;如果被改成病毒程序,后果不堪設(shè)想。
userinit.exe執(zhí)行較早,用于啟動(dòng)services.exe(服務(wù)控制管理器)、lsass.exe(本地安全授權(quán))、lsm.exe(本地會(huì)話管理器),對(duì)于一些以系統(tǒng)服務(wù)或驅(qū)動(dòng)等方式進(jìn)行加載的病毒,普通的殺毒軟件是無(wú)法清除的。這個(gè)時(shí)候就要使用這種方式進(jìn)行清除了。
跟這個(gè)文件相對(duì)應(yīng)的還有一個(gè)INI文件:userinit.ini,這是一個(gè)比較奇怪的配置文件,他在系統(tǒng)中只存在一次,Windows 在重啟時(shí) ,將在 Windows 目錄下搜索 Wininit.ini 文件,如果找到,就遵照該文件指 令刪除、改名、更新文件,完成任務(wù)后 ,將刪除 Wininit.ini 文件本身,繼續(xù)啟動(dòng)。所以 Wininit.ini 文件中的指令只會(huì)被執(zhí)行一次,列目錄時(shí)也通常沒(méi)有它的蹤影 。
比如常見(jiàn)的一個(gè)例子是:假設(shè)你要為自己的軟件編寫(xiě)一個(gè)卸載程序,這個(gè)卸載程序本身是不可能被自己刪除的,因?yàn)樗噲D刪除自身時(shí),自身卻正在運(yùn)行。為了清除卸載程序本身,你就得借助于Wininit.ini文件。順便提一句,在安裝Windows的最后階段,就是利用Wininit.ini文件來(lái)清除和更名被安裝程序SETUP自身使用的文件。
當(dāng)然,病毒也可以利用這個(gè)程序的原理感染或替換系統(tǒng)核心進(jìn)程或服務(wù)。利用這種方式隱蔽程序高,而且難于清除,不過(guò)還好,目前發(fā)現(xiàn)的利用這種方式的病毒還不是太多。
隱藏程度:★★★★★
應(yīng)用程度:★★
10、任務(wù)計(jì)劃
利用“任務(wù)計(jì)劃”,可以將任何腳本、程序或文檔安排在某個(gè)最方便的時(shí)間運(yùn)行。當(dāng)然也包括病毒。
打開(kāi)“計(jì)算機(jī)管理”—>任務(wù)計(jì)劃程序,可以看到當(dāng)前正在運(yùn)行的任務(wù)計(jì)劃。計(jì)劃時(shí)間可以靈活設(shè)置。只需要導(dǎo)入計(jì)劃就可以達(dá)到讓病毒按照計(jì)劃好的時(shí)間自動(dòng)運(yùn)行。
實(shí)際操作中,當(dāng)然并不是這么采用向?qū)У姆绞竭M(jìn)行一步一步進(jìn)行,病毒只需要將配置好的任務(wù)計(jì)劃文件導(dǎo)入就可以了。在linux系統(tǒng)中這也是病毒最常用的一種方式。如果你發(fā)現(xiàn)的系統(tǒng)總是莫名其妙的彈出一些窗口或者執(zhí)行某個(gè)程序,你應(yīng)該去這里檢查一下。
隱藏程度:★★★
應(yīng)用程度:★★★★
以上幾種方式是病毒隨操作系統(tǒng)啟動(dòng)時(shí)常用的幾種方式,小伙伴們,你學(xué)到了嗎?
本文來(lái)源:大兵說(shuō)安全






