• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • Windows自啟動方式大全

    發表于:2007-07-02來源:作者:點擊數: 標簽:
    前言: ?? ??有時候人們往往會為了一個程序的啟動而頭痛,因為一些用戶往往不知道那些文件是如何啟動的。所以經常會有些沒用的東西掛在系統上占用資源。有時候也會有人因為不知道如何啟動某個文件而頭痛。更有些特洛依木馬的作者因為不清楚系統的自啟動

    前言:
    ??
    ??有時候人們往往會為了一個程序的啟動而頭痛,因為一些用戶往往不知道那些文件是如何啟動的。所以經常會有些沒用的東西掛在系統上占用資源。有時候也會有人因為不知道如何啟動某個文件而頭痛。更有些特洛依木馬的作者因為不清楚系統的自啟動方式而使自己的木馬輕松被別人發現……
    ??
    ??Windows的自啟動方式其實有許多方式。除了一些常見的啟動方式之外,還有一些非常隱蔽的可用來啟動文件的方式。本文總結如下,雖然不是全部,但我想應該會對大家有所幫助。文章全部以系統默認的狀態為準,以供研究。
    ??
    ??其中(English)代表英文操作系統,(Chinese)代表中文操作系統。本文沒加說明指的全為中文Windows98操作系統。
    ??
    ??警告:
    ??文中提及的一些操作可能會涉及到系統的穩定性。例如如果不正確地使用注冊表編輯器可以導致可能重新安裝系統這樣嚴重的問題。微軟也不能保證因不正常使用注冊表編輯器而造成的結果可以被解決。筆者不對使用后果負責,請根據自己的情況使用。
    ??
    ??Windows的自啟動方式:
    ??一.自啟動目錄:
    ??
    ??1.第一自啟動目錄:
    ??默認路徑位于:
    ??C:windowsstart menuprogramsstartup(English)
    ??C:windowsstart menuprograms啟動(Chinese)
    ??這是最基本、最常用的Windows啟動方式,主要用于啟動一些應用軟件的自啟動項目,如Office的快捷菜單。一般用戶希望啟動時所要啟動的文件也可以通過這里啟動,只需把所需文件或其快捷方式放入文件夾中即可。
    ??
    ??對應的注冊表位置:
    ??[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerShell Folders]
    ??Startup=\"%Directory%\"
    ??[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerUser Shell Folders]
    ??Startup=\"%Directory%\"
    ??其中“%Directory%”為啟動文件夾位置。
    ??
    ??英文默認為:
    ??C:windowsstart menuprogramsstartup
    ??中文默認為:
    ??C:windowsstart menuprograms啟動
    ??
    ??在開始菜單的“啟動”文件夾是可更改的,如果用戶更改了啟動文件夾,則以上注冊表的鍵值均會改變為相應的名稱。
    ??
    ??值得注意的是:開始菜單的“啟動”文件夾中的內容雖然在默認的狀態下可以被用戶看得一清二楚。但通過改動還是可以達到相當隱蔽地啟動的目的的:
    ??
    ??首先,“啟動”文件夾中的快捷方式或其他文件的屬性可以改變為“隱藏”。這樣可以達到系統不啟動被隱藏的文件,等到需要啟動的時候又可以通過更改回文件屬性而恢復啟動的作用。
    其次,其實“啟動”文件夾只是一個普通的文件夾,但是由于系統監視了這個文件夾,所以變得有些特殊,但文件夾有的功能該文件夾也是有的。譬如“啟動”文件夾的名稱是可以更改的,并且“啟動”文件夾也可以設置屬性。如果把屬性設置為“隱藏”,則在系統中的【開始】【程序】菜單中是看不到“啟動”文件夾的(即使在“文件夾選項”中已經設定了“顯示所有文件”)。而系統還會啟動這個被隱藏的文件夾中的非隱藏文件。
    ??敏感的人們也許已經發現問題。舉一個例子:
    ??
    ??如果我想啟動A木馬的server端服務器,我可以把原來的“啟動”菜單的名稱更改為“StartUp”(這里是隨便改的,注冊表相應的鍵值也會自動更改。)之后再創建一個名為“啟動”的文件夾,把“StartUp”菜單中的文件全部復制(這里用復制,可以騙過用戶的檢查)到“啟動”菜單中,然后把A木馬的server程序放入“StartUp”文件夾中,最后把“StartUp”文件夾隱藏。大功告成!
    ??
    ??從外表看來,用戶的【開始】【啟動】目錄還在,而且要啟動的文件也在。但系統此時啟動的文件不是名為“啟動”的文件夾中的文件,而是名為“StartUp”的文件夾中的文件。如果木馬做的好的話,完全可以在每次啟動的時候把“StartUp”中的文件復制到“啟動”目錄中來達到實時更新啟動目錄的目的。由于“StartUp”文件夾被隱藏,從【開始】【程序】中是無法看到真正的啟動菜單“StartUp”的,所以達到了隱蔽啟動的目的!
    ??這個啟動方式雖然比較隱蔽,但通過msconfig依舊可以在“啟動”頁中看出來。
    ??
    ??2.第二自啟動目錄:
    ??是的,其實,Windows還有另外一個自啟動目錄,而且很明顯但卻經常被人們忽略的一個。
    ??該路徑位于:
    ??C:WINDOWSAll UsersStart MenuProgramsStartUp(English)
    ??C:WINDOWSAll UsersStart MenuPrograms啟動(Chinese)
    ??這個目錄的使用方法和第一自啟動目錄是完全一樣的。只要找到該目錄,將所需要啟動的文件拖放進去就可以達到啟動的目的。
    ??[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionexplorerUser Shell Folders]
    ??\"Common Startup\"=\"%Directory%\"
    ??[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionexplorerShell Folders]
    ??\"Common Startup\"=\"%Directory%\"
    ??
    ??值得注意的是:該目錄在開始菜單的“啟動”目錄中是完全不能被看見的。而伴隨著每次啟動,該目錄下的非隱藏文件也會隨之啟動! 另外,在Msconfig中可以看到在這個目錄下要啟動的文件。

    二.系統配置文件啟動:
    ??
    ??由于系統的配置文件對于大多數的用戶來說都是相當陌生的;這就造成了這些啟動方法相對來說都是相當隱蔽的,所以這里提到的一些方法常常會被用于做一些破壞性的操作,請讀者注意。
    ??
    ??1.WIN.INI啟動:
    ??啟動位置(file.exe為要啟動的文件名稱):
    ??[windows]
    ??load=file.exe
    ??run=file.exe
    ??注意:load=與run=的區別在于:通過load=運行文件,文件會在后臺運行(最小化);而通過run=來運行,則文件是在默認狀態下被運行的。
    ??
    ??2.SYSTEM.INI啟動:
    ??啟動位置(file.exe為要啟動的文件名稱):
    ??默認為:
    ??[boot]
    ??Shell=Explorer.exe
    ??可啟動文件后為:
    ??[boot]
    ??Shell=Explorer.exe file.exe
    ??說明:
    ??筆者記得在諾頓先生(就是開發出Norton系列軟件的人)寫的一本書里面曾經說過,1、2這兩個文件的有無對系統沒有什么影響,但由于時間的關系,筆者沒有來得及試驗,有興趣者可以試一試。
    ??
    ??不過有一點是可以肯定的,這樣的啟動方式往往會被木馬或一些惡作劇程序(如,妖之吻)利用而導致系統的不正常。由于一般用戶很少會對這兩個文件關心,甚至有的人不知道這些文件是做什么用的,所以隱蔽性很好。但由于其使用的越來越頻繁,這種啟動方式也被漸漸的察覺了。用戶可以使用msconfig這個命令實現檢查是否有什么程序被加載。具體的是在看是菜單中的“運行”中輸入msconfig回車,之后按照文字說明即可。
    ??
    ??注意:
    ??1.??和WIN.INI文件不同的是,SYSTEM.INI的啟動只能啟動一個指定文件,不要把Shell=Explorer.exe file.exe換為Shell=file.exe,這樣會使Windows癱瘓!
    ??2.??這種啟動方式提前于注冊表啟動,所以,如果想限制注冊表中的文件的啟動,可是使用這種方法。
    ??3.WININIT.INI啟動:
    ??Wininit.ini這個文件也許很多人不知道,一般的操作中用戶也很少能直接和這個文件接觸。但如果你編寫過卸載程序的話,也許你會知道這個文件。
    ??WinInit即為Windows Setup Initialization Utility。翻譯成中文就是Windows安裝初始化工具。這么說也許不明白,如果看到如下提示信息:
    ??Please wait while Setup updates your configuration files.
    ??This may take a few minutes...
    ??大家也許就都知道了!這個就是Wininit.ini在起作用!
    ??
    ??由于在Windows下,許多的可執行文件和驅動文件是被執行到內存中受到系統保護的。所以在Windows的正常狀態下更改這些文件就成了問題,因此出現了Wininit.ini這個文件來幫助系統做這件事情。它會在系統裝載Windows之前讓系統執行一些命令,包括復制,刪除,重命名等,以完成更新文件的目的。Wininit.ini文件存在于Windows目錄下,但在一般時候我們在C:Windows目錄下找不到這個文件,只能找到它的exe程序Wininit.exe。原因就是Wininit.ini在每次被系統執行完它其中的命令時就會被系統自動刪除,直到再次出現新的Wininit.ini文件……之后再被刪除。
    文件格式:
    ??[rename]
    ??file1=file2
    ??file1=file2的意思是把file2文件復制為文件名為file1的文件,相當于覆蓋file1文件。
    ??這樣啟動時,Windows就實現了用file2更新file1的目的;如果file1不存在,實際結果是將file2復制并改名為file1;如果要刪除文件,則可使用如下命令:
    ??[rename]
    ??nul=file2?
    ??這也就是說把file2變為空,即刪除的意思。
    ??以上文件名都必須包含完整路徑。
    ??
    ??注意:
    ??1.由于Wininit.ini文件處理的文件是在Windows啟動以前處理的,所以不支持長文件名。
    ??2.以上的文件復制、刪除、重命名等均是不提示用戶的情況下執行的。有些病毒也會利用這個文件對系統進行破壞,所以用戶如果發現系統無故出現:
    ??Please wait while Setup updates your configuration files.
    ??This may take a few minutes...
    ??那么也許系統就有問題了。
    ??3. 在Windows 95 Resource Kit中提到過Wininit.ini文件有三個可能的段,但只敘述了[rename]段的用法。
    ??4.WINSTART.BAT啟動:
    ??這是一個系統自啟動的批處理文件,主要作用是處理一些需要復制、刪除的任務。譬如有些軟件會在安裝或卸載完之后要求重新啟動,就可以利用這個復制和刪除一些文件來達到完成任務的目的。如:
    ??“@if exist C:WINDOWSTEMPPROC.BAT call C:WINDOWSTEMPPROC.BAT”
    ??這里是執行PROC.BAT文件的命令;
    ??“call 200413091742.htm.exe > nul”
    ??這里是去除任何在屏幕上的輸出。
    ??值得注意的是WinStart.BAT文件在某種意義上有和AUTOEXEC.BAT一樣的作用。如果巧妙安排完全可以達到修改系統的目的!
    ??5.AUTOEXEC.BAT啟動:
    ??這個就沒的說了,應該是用戶再熟悉不過的系統文件之一了。每次重新啟動系統時在DOS下啟動。惡意的程序往往會利用這個文件做一些輔助的措施。
    ??
    ??不過,在AUTOEXEC.BAT文件中會包含有惡意代碼。如format c: /y等;由于BAT惡意程序的存在,這個機會大大地增加了。譬如最近很流行的SirCam蠕蟲也利用了Autoexec.bat文件。
    ??說明:
    ??4、5這兩個文件都是批處理文件,其作用往往不能完全寫出來,因為批處理的用處在DOS時代的應用太廣泛,它的功能相對來說也是比較強大。想利用這兩個文件,需要對DOS有一定的了解。.
    ??
    ??三.注冊表啟動:
    ??
    ??注冊表中的啟動應該是被使用最頻繁的啟動方式,但這樣的方式也有一些隱蔽性較高的方法,大致有三種。
    ??
    ??1.常規啟動:
    ??其中%path%為任意路徑,file.exe為要運行的程序。 [HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServices]
    \"Anything\"=\"%path%file.exe\"
    ??[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunServicesOnce]
    ??\"Anything\"=\"%path%file.exe\"
    ??[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRun]
    ??\"Anything\"=\"%path%file.exe\"
    ??[HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionRunOnce]
    ??\"Anything\"=\"%path%file.exe\"
    ??
    ??[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun]
    ????\"Whatever\"=\"c:runfolderprogram.exe\"
    ??[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRunOnce]
    ????\"Whatever\"=\"c:runfolderprogram.exe\"
    ??注意:
    ??(1).如果需要運行.dll文件,則需要特殊的命令行。
    ??如:
    ??Rundll32.exe C:WINDOWSFILE.DLL,Rundll32
    ??(2).解除這里相應的自啟動項只需刪除該鍵值即可,但注意不要刪除如SystemTray、ScanRegistry等這樣的系統鍵值。
    ??(3).如果只想不啟動而保留鍵值,只需在該鍵值加入rem即可。如:
    ??“rem?C:Windowsa.exe”
    ??(4).在注冊表中的自啟動項中沒有這項:
    ??[HKEY_CURRENT_USER SoftwareMicrosoftWindowsCurrentVersionRunServices]
    ??(5).Run和RunServices的區別在于:Run中的程序是在每次系統啟動時被啟動,RunServices則是會在每次登錄系統時被啟動。
    ??關于:
    ??[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRunOnceEx]
    ??
    ??有特殊的語法:
    ??例如,運行notepad.exe
    ??HKLMSOFTWAREMicrosoftWindowsCurrentVersionRunOnceEx
    ??\"Title\"=\"My Setup Title\"
    ??\"Flag\"=dword:00000002
    ??
    ??HKLMSOFTWAREMicrosoftWindowsCurrentVersionRunOnceEx001
    ??\"RunMyApp\"=\"||notepad.exe\"
    ??語法為:
    ??HKLMSOFTWAREMicrosoftWindowsCurrentVersionRunOnceEx
    ??Flags = 0x0000000
    ??Title = \"Status Dialog Box Title\"
    ??
    ??HKLMSOFTWAREMicrosoftWindowsCurrentVersionRunOnceExDepend
    ??0001 = \"xxx1\"
    ??000X = \"xxxx\"
    ??
    ??HKLMSOFTWAREMicrosoftWindowsCurrentVersionRunOnceEx001
    ??Entry1 = \"MyApp1.exe\"
    ??EntryX = \"MyApp2.exe\"
    ??HKLMSOFTWAREMicrosoftWindowsCurrentVersionRunOnceEx00x
    ??...
    ??注意:
    ??(1).“xxx1,xxxx”是一個動態鏈接庫(DLL)或.OCX文件名(如My.ocx或My.dll)。

    (2).“0001,000x”是部分名字??梢允菙底趾臀淖?。
    ??(3).“entry1,entryX”是指向一個要運行的程序文件的注冊表串值。
    ??鍵值的說明:
    ??Flags是一個定位在RunOnceEx鍵用來激活/禁止的DWORD值,具體如下:
    ??值??功能??功能定義
    ??0x00000000??默認??所有功能被禁止
    ??0x00000004??檢查殼狀況??打開殼的讀寫校驗準備接受OLE命令
    ??0x00000008??無報錯對話??錯誤對話框不顯示
    ??0x00000010??創建錯誤報告文件??創建 C:WindowsRunOnceEx.err 文件如果有錯誤出現
    ??0x00000020??創建執行報告文件??創建一個有命令狀態的C:WindowsRunOnceEx.log文件
    ??0x00000040??無例外限制??當注冊DLL時不限制例外
    ??0x00000080??無狀態對話??當RunOnceEx運行時狀態對話框不顯示
    ??
    ??由于涉及篇幅較多,具體做法請瀏覽微軟網頁:
    ??
    ??
    ??2.特殊啟動1:
    ??在注冊表中除了上述的普通的啟動方式以外,還可以利用一些特殊的方式達到啟動的目的:
    ??[HKEY_CLASSES_ROOTexefileshellopencommand] @=\"%1\" %*
    ??[HKEY_CLASSES_ROOTcomfileshellopencommand] @=\"%1\" %*
    ??[HKEY_CLASSES_ROOTbatfileshellopencommand] @=\"%1\" %*
    ??[HKEY_CLASSES_ROOThtafileshellopencommand] @=\"%1\" %*
    ??[HKEY_CLASSES_ROOTpiffileshellopencommand] @=\"%1\" %*
    ??[HKEY_LOCAL_MACHINESoftwareCLASSESbatfileshellopencommand] @=\"%1\" %*
    ??[HKEY_LOCAL_MACHINESoftwareCLASSEScomfileshellopencommand] @=\"%1\" %*
    ??[HKEY_LOCAL_MACHINESoftwareCLASSESexefileshellopencommand] @=\"%1\" %*
    ??[HKEY_LOCAL_MACHINESoftwareCLASSEShtafileshellopencommand] @= \"%1\" %*
    ??[HKEY_LOCAL_MACHINESoftwareCLASSESpiffileshellopencommand] @=\"%1\" %*
    ??
    ??其實從注冊表的路徑上也許就隱約可以看出,這些都是一些經常被執行的可執行文件的鍵值。往往有些木馬是可以更改這些鍵值從而達到加載的目的:
    ??如果我把“”%1”%*”改為“file.exe”%1”%*”則文件file.exe就會在每次執行某一個類型的文件(要看改的是哪一個文件類型)的時候被執行! 當然,可以被更改的不一定只是可執行文件,譬如冰河就利用了TXT文件的鍵值:
    ??[HKEY_CLASSES_ROOTtxtfileshellopencommand]實現木馬的一種啟動方式。
    ??
    ??3.特殊啟動2:
    在注冊表中:
    ??HKEY_LOCAL_MACHINESystemCurrentControlSetServicesVxD
    ??的位置上有這樣的地址。該地址是系統啟動VxD驅動文件放置的地址,就像PrettyPark這個蠕蟲一樣,可以建立一個主鍵之后把VxD文件添加到注冊表中在這里。
    ??注意:不可以直接把一個EXE文件改名為VxD文件,需要另外進行編程,生成的VxD文件。
    ??
    ??4.其他啟動方式:
    ??
    ??(一).C:Explorer.exe啟動方式:
    ??這是一種特殊的啟動方式,很少有人知道。
    ??在Win9X下,由于SYSTEM.INI只指定了Windows的外殼文件EXPLORER.EXE的名稱,而并沒有指定絕對路徑,所以Win9X會搜索EXPLORER.EXE文件。
    ??搜索順序如下:
    ??(1).??搜索當前目錄。
    ??(2).??如果沒有搜索到EXPLORER.EXE則系統會獲取
    ??[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironmentPath]的信息獲得相對路徑。
    ??(3).??如果還是沒有文件系統則會獲取[HKEY_CURRENT_USEREnvironmentPath]的信息獲得相對路徑。
    ??
    ??其中:
    ??[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlSession ManagerEnvironmentPath]和[HKEY_CURRENT_USEREnvironmentPath]所保存的相對路徑的鍵值為:“%SystemRoot%System32;%SystemRoot%”和空。
    ??所以,由于當系統啟動時,“當前目錄”肯定是%SystemDrive%(系統驅動器),這樣系統搜索EXPLORER.EXE的順序應該是:
    ??(1).??%SystemDrive%(例如C:)
    ??(2).??%SystemRoot%System32(例如C:WINNTSYSTEM32)
    ??(3).??%SystemRoot%(例如C:WINNT)
    ??此時,如果把一個名為EXPLORER.EXE的文件放到系統根目錄下,這樣在每次啟動的時候系統就會自動先啟動根目錄下的EXPLORER.EXE而不啟動Windows目錄下的EXPLORER.EXE了。
    ??在WinNT系列下,WindowsNT/Windows2000更加注意了EXPLORER.EXE的文件名放置的位置,把系統啟動時要使用的外殼文件(EXPLORER.EXE)的名稱放到了:
    ??[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsNTCurrentVersionWinlogonShell]
    ??這個位置。
    ??作為默認這個位置是不存在的,默認為是Explorer.exe。
    ??具體請參考:-052.asp
    ??注意:
    ??一定要確定根目錄下的EXPLORER.EXE要能啟動Windows目錄下的EXPLORER.EXE,否則會導致Windows無法啟動!
    ??現在流行的病毒CodeRed就會在C:和D:目錄下放置兩個約8KB的EXPLORER.EXE的文件!
    ??在Windows 2000 SP2中微軟已經更改了這一方式。
    (二).屏幕保護啟動方式:
    ??Windows的屏幕保護程序是一個.scr文件。這是一個PE格式的可執行文件。如果把屏幕保護程序.scr更名為.exe的文件,則該程序仍然可以正常啟動。類似的.exe文件更名為.scr文件也是一樣可以被運行!
    ??.scr文件默認存在于C:Windows目錄中,他的名字就是在“顯示”屬性中的“屏幕保護程序”中的名稱。在C:Windows目錄下的所有*.scr文件都會被Windows的“屏幕保護程序”顯示,而文件路徑本身保存在System.ini中的SCRNSAVE.EXE=的這條中。有意思的是在SCRNSAVE.EXE=這條中,其規定的路徑也包含了目錄名稱。即如果我想安裝一個.scr文件時,譬如安裝路徑為D:SCR1.scr,而D:SCR這個目錄中還有2.scr,則在這個目錄中的所有.scr(1.scr,2.scr)文件都會被顯示在“屏幕保護程序”設置中。如果屏幕保護程序設為“(無)”,則SCRNSAVE.EXE=這條不存在。但如果SCRNSAVE.EXE=這條所指的文件或目錄是錯誤的,則在“屏幕保護程序設置”中仍然會顯示“(無)”。
    ??
    ??屏幕保護程序的啟動時間保存在注冊表中的這個位置上:
    ??HKEY_USERS.DEFAULTControl PaneldesktopScreenSaveTimeOut
    ??時間單位為秒,不過雖然是秒,可啟動時間卻為分,即從60秒開始記錄,如果記錄時間小于60秒,則自動定為1分鐘。
    ??屏幕保護是否設置密碼的鍵值為:
    ??HKEY_USERS.DEFAULTControl PaneldesktopScreenSaveUsePassword
    ??有密碼則值為1沒有密碼則值為0。
    ??由此可見,如果有人把自己所作的.exe程序更名為.scr的程序,并使程序能夠在SYSTEM.INI中添加“SCANSAVE.EXE=/%Path%”f/ile.scr”(/%Path%/file.scr為所需要設置的文件的路徑和文件名,如C:Program filestrojan.scr),修改注冊表中的HKEY_USERS.DEFAULTControl PaneldesktopScreenSaveTimeOut,定時間為60,則系統只要閑置一分鐘該文件就會被啟動!
    ??另外一個簡單的破壞方式就是可以隨機產生屏幕保護密碼并寫入相應文件的相應位置,定時間為1分鐘,則系統只要閑置一分鐘則會被被鎖?。ㄓ捎谏婕皢栴}并非自啟動問題,所以不加以討論。)
    ??注意:由于SCANSAVE.EXE=這里還會定義.scr文件的路徑,所以最好不要把要啟動的文件放置在.scr文件較多的一些目錄,否則容易引起懷疑。(Windows目錄除外) (三).依附啟動:
    ??這類啟動方式已經有幾分類似病毒了。這種方法是利用病毒的傳染機制把要啟動的EXE文件附著在另外的一個和多個EXE文件上,從而達到啟動這個EXE文件就可以啟動要啟動的文件的目的。記得1999年YAI這個木馬流行的時候,它就使用了依附一個EXE文件而達到啟動的目的,但是由于BUGS和方式問題該木馬的破壞作用卻體現在了它“病毒”的一面。
    使用這種啟動方法一定要注意不能破壞EXE文件(否則會很容易被發現),而且最好把木馬定位在固定的一個或者幾個EXE文件上。如:IEXPLORE.EXE(IE的EXE文件),RNAPP.EXE(撥號網絡的EXE文件)等等。
    ??注意:這種方法的使用比較危險,技術上也需要相當功底,而且和病毒的距離很近,慎用。
    ??
    ??(四).計劃任務啟動方式:
    ??Windows的計劃任務是Windows的一個預置實現某些操作而使用的一個功能。但是如果利用這個功能也是能夠實現自啟動的目的的!由于很多電腦都會自動加載“計劃任務”所以隱蔽性相對不錯。
    ??
    ??在Windows默認的情況下,計劃任務是一個個保存在C:WindowsTasks目錄下的.job文件。.job文件里包括了啟動方式、文件路徑等一系列的信息。編制出或者使軟件自己可以寫出.job文件,則是關鍵。之后在相關地方寫入標記啟動即可。
    ??由于時間關系,這個方法沒有來得及試驗,讀者可以自己試驗一下。
    ??(五).AutoRun.inf啟動方式:
    ??Autorun.inf這個標識也許大家都見過。是的,這個最常出現在光盤中,用于光盤自啟動。每次把光盤放入光驅中的時候,系統會通過這個文件來決定是否自動啟動光盤。但是有沒有想過,這個文件也可以用來自啟動一些文件!
    ??Autorun.inf的內容通常是:
    ??[AUTORUN]
    ??OPEN=file.exe
    ??ICON=icon.ico
    ??
    ??OPEN中是插入光盤或者雙擊光盤盤符就會運行的可執行文件的名稱。
    ??ICON中是該光驅驅動器的圖標文件。該文件可以是其他文件。如:
    ??[AUTORUN]
    ??OPEN=file.exe
    ??ICON=icon.exe,2
    ??其中icon.exe是一個有圖標文件的可執行文件,“,2”則是該文件中的第3個圖標。(“,0”是第一個圖標,無數字則默認為第一個圖標)。
    ??最關鍵的是該Autorun.inf文件是可以被用在硬盤的驅動器上的。也就是說,如果把光盤上的所有文件及目錄原封不動的復制到某一硬盤的根目錄下,則雙擊盤符會出現自動運行文件!
    ??如果是木馬的話,打一個比方:一個木馬如果執行后被命名為aaa.exe放置在C:Windows目錄下。那么該木馬可以生成一個autorun.inf
    ??文件于C:下,內容如下: [AUTORUN]
    ??OPEN=Windowsaaa.exe
    ??ICON=aaa.exe
    ??這樣的話,盤符圖標為aaa.exe的第一個圖標文件。則在每次雙擊C盤的時候都會執行aaa.exe文件了。但要注意的是,aaa.exe文件
    ??最好能夠打開C盤目錄。(比較容易偽裝)
    ??
    ??注意:
    ??(1).autorun.inf的屬性被改為隱藏后仍可以正常使用。
    ??(2).autorun.inf中的路徑對相對路徑和絕對路徑都是可以實現的。也就是說,如果autorun.inf被放在1盤符下,也可以2盤符上的文件!如:
    如果把autorun.inf文件放在C盤根目錄下,內容為
    ??[AUTORUN]
    ??OPEN=D:CCCbbb.exe
    ??ICON=bbb.exe
    ??則這時如果雙擊C盤則可以執行D盤CCC目錄上的bbb.exe文件!
    ??(3).如果沒有OPEN項目,則系統不執行任何文件,而去執行下一個命令。
    ??(4).如果沒有ICON項目,則該盤符的圖標為原Windows盤符圖標,但如果有ICON項卻設置錯誤,或者所設置的文件沒有圖標,則系統會顯示為默認的空白圖標。
    ??(5).自動啟動相關:
    ??a.代啟動:
    ??這種啟動方式其實只是一個方法的問題。即可以用啟動一個正常文件來啟動另一個文件,SubSeven就用過啟動Windos.exe從而啟動SubSeven的Sever文件的方法。
    ??b.Start啟動:
    ??在“運行“中或“MS-DOS”方式中輸入start回車,則會顯示
    ??Runs a Windows program or an MS-DOS program.
    ??
    ??START [options] program [arg...]
    ??START [options] document.ext
    ??
    ??/m[inimized] Run the new program minimized (in the background).
    ??/max[imized] Run the new program maximized (in the foreground).
    ??/r[estored]?Run the new program restored (in the foreground). [default]
    ??/w[ait]???Does not return until the other program exits.
    ??如果要啟動的程序配合這個命令,則可以更加隱蔽,如:
    ??start/m file.exe
    ??但似乎有些有啟動畫面的軟件(如金山詞霸)對這條命令并沒有反映。
    ??
    ??c.控制面板啟動:
    ??這是利用控制面板程序可以被類似DLL執行,從而達到啟動目的。
    ??在控制面板中,.cpl文件是控制面板的原文件。默認的這些文件都會被放置在/%WINDOWS%/SYSTEM/目錄下的,如desk.cpl是桌面屬性、inetcpl.cpl是Internet選項之類。但這些.cpl文件全都是PE格式文件,也就是說如果用戶把一個可執行的類似DLL的.cpl文件放入%Windows%System中,則在控制面板中可看到其圖標,并可執行!
    ??
    ??由于.cpl文件的特殊性,需要使用rundll32.exe來啟動該文件。rundll32.exe是Windows用來調用動態連接庫函數時所使用的文件,在運行中輸入: rundll32 shell32.dll,Control_RunDLL /%path%/desk.cpl,,X
    ??其中shell32.dll為被調用的DLL文件,意思為調用shell32.dll中的Control_RunDLL來打開desk.cpl文件;/%path%/為.cpl文件的路徑,默認為C:WindowsSystem;最后的X為desk.cpl文件的頁數:從0開始,0為第一頁(如“顯示屬性”的“背景”),1為第二頁(如“桌面屬性”的“屏幕保護程序”),依此類推。

    但如果照上面的方法做,則該文件會在控制面板中被顯示。有兩種方法可以不讓其顯示:
    ??(1).??不要把自己的.cpl文件放在C:WINDOWSSYSTEM中。因為默認的情況下Windows會加載的所有.cpl文件。如果想讓其顯示則打開C:WINDOWS下的Control.ini文件,在[MMCPL]中寫入類似:
    ??file.cpl=D:pathfile.cpl
    ??的命令,從而達到顯示的目的。
    ??(2).??當你看到Control.ini文件的時候一定可以看到在[MMCPL]上面的[don‘t load]。是的,如果把你的文件以file.cpl=no的格式寫入到這里面,那么文件就不被加載了。反之恢復。
    ??
    ??d.其他:
    ??注冊表中:
    ??HKEY_USERS.DEFAULTSoftwareMicrosoftWindowsCurrentVersionExplorerAdvanced
    ??的“HideFileExt”這個鍵值是確定Windows是不是顯示擴展名的值,如果其值為1就隱藏擴展名,為0則不隱藏。
    ??EXE文件中:
    ??如SirCam蠕蟲一樣,*.EXE文件的擴展名可以改名稱為.BAT、.COM、.PIF、.SCR等,并且運行效果一樣,反過來不一定。但.EXE文件并不能更名為.LNK文件,這也許也是SirCam的一個BUG。
    ??最后:
    ??Windows的自啟動方式有很多樣式。這是Windows系統的一部分。一個隱蔽而又很少有人知道的自啟動方式是遠程監控軟件成為一個優秀的軟件的必要的條件。對于普通用戶來說,了解這些信息也是非常必要的。筆者試圖全面的介紹這些可以啟動的方法和想法。文中提到的一些自啟動方法有的很普通,有的則很少有人知道,有些方式甚至有可能是第一次被寫出來。其中的許多方式筆者加入了自己的想法,使一些方式雖然普通但卻很隱蔽。
    ??
    ??其中所提的自啟動方式全部在Windows98或提到的相應的系統中默認測試通過。對Windows ME和Windows2000只有部分適用。通過對不同平臺的自啟動方式測試,也可以發現Windows系統還是朝著越來越完善的方向發展。所以在未來的某個WINDOWS版本中,筆者不能保證這些能被使用。但總會有一些可以利用的地方。如果這篇涂鴉能給各位讀者帶來一些啟發,那么筆者將會感到非常高興!
    ??由于時間倉促再加上筆者所學有限,文中錯誤之處一定不少,望讀者海涵。
    ??
    ??關于Windows的自啟動方式的探討可以與我聯系,我的E-mail是。
    ??本文轉載請注明作者及出處。若用于商業,請與作者聯系。
    ??
    ??主要參考資料:??
    ????
    ????
    ??Syntax for the RunOnceEx Registry Key?
    ??SUMMARY??
    ??MORE INFORMATION??
    ??RunOnceEx Sample to Run Notepad?
    ??Sample Syntax??
    ??Notes??
    ??Definition of Values and Subkeys??
    ??
    ??Wininit.ini與病毒(名稱為筆者所加)??
    ??-052.asp

    ,

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>