Plurk FaceBook Twitter 收進你的MyShare個人書籤 MyShare
  顯示內嵌語法

旗標技術通訊電子報
內容提供:旗標出版公司

旗標技術通訊電子報

第132期 2002.1.7



Windows XP 系統實用秘笈
產品編號:F032
定價:500元
施威銘研究室 著
本期書摘--Windows XP 啟動大剖析(2)
啟動檔案與開機磁片

檢視啟動檔案

上週我們提到幾個啟動系統時所需用到的檔案, 基於
安全的考量, 這幾個檔案預設都無法在【我的電腦】
中看到, 必須在【我的電腦】中執行【工具/資料夾
選項】進行設定

-->資料夾選項
-->檢視
-->取消勾選【隱藏保護的作業系統檔案】
-->隱藏檔案和資料夾/顯示所有檔案和資料夾(勾選)
-->確定

接著在【我的電腦】中切換到 C:\ 資料夾中, 就可
以看到這幾個檔案了.

除了 Ntldr, Boot.ini, Ntdetect.com 和多重開機
系統上的 Bootsect.dos 之外, 還會用到下列 2 個
檔案:

Bootfont.bin : 這個中文字型檔, 用在啟動選單中
               顯示中文字.

Ntbootdd.sys : 在安裝 SCSI 硬碟的電腦上才會有
               這個檔案. 如果要啟動的 Windows
               XP 是安裝在 SCSI 硬碟上, 且 
               SCSI  卡上沒有 BIOS 可用以控制
               /讀取 SCSI 硬碟的內容, Ntldr 就
               需載入 Ntbootdd.sys 這個 SCSI 
               驅動程式, 以便能讀取/載入 Windows 
               XP 作業系統檔案. 所以若沒有配備 
               SCSI 裝置, 或是 SCSI 卡有 BIOS, 
               就不需要這個檔案.

製作開機磁片

從 DOS 到 Windows 98 時代, 我們都可製作開機磁片
, 讓系統有問題時可從軟碟開機, 啟動 DOS 作業系統
, 然後存取硬碟中的資料或甚至執行硬碟中的 Win.exe 
來進入 Windows 作業系統.

但 Windows NT/2000 以及 Windows XP 就沒有這麼方
便了, 這些作業統並不提供傳統的 DOS 模式, 而啟動
所需的檔案也不可能放到一小片軟碟中. 但要製作 
Windows XP 的『開機』磁片並非不可能的事.

Windows 98/DOS 的開機磁片, 可啟動 DOS 作業系統, 
但以下要介紹的 Windows XP 開機磁片只能『開機』,
啟動到作業系統的任務仍是交給硬碟的 Windows XP. 
所以磁片上只要放開機最初所需的幾個檔案即可, 建
立的步驟如下 :

1.先在 Windows XP 下格式化磁片, 不可直接沿用以 
  Windows 95/98/Me 格式化的磁片. 因為 Windows XP 
  的啟動磁區內容和 Windows 9x 的不同.

2.將 C:\ 資料夾下的 Boot.ini, Ntldr, Ntdetect.com,
  Bootsect.dos, Bootfont.bin 和 Ntbootdd.sys 
  複製到磁片上.

如此就建立了一片 Windows XP 開機磁片了, 使用這
片磁片開機時, 雖然是執行磁片上的 Ntldr 載入磁片
上的 Boot.ini, 但因 Boot.ini 是從硬碟複製過來
的, 所以接下來的啟動過程會和從硬碟開機時完全相
同. 例如 : 在 Boot.ini 中只有一項啟動 C: 硬碟
中的 Windows XP 的紀錄, 那麼 Ntldr 就會到 
C:\Windows\system32 中載入 Ntoskrnl 來啟動
Windows XP.

-- 待續 
.........................................................................................


駭客任務實戰--防護篇
產品編號:F8436
定價:420元
程秉輝 著
本期書摘--木馬程式的防護、搜索與摧毀(3)


如何判斷與找出隱藏在登錄(Registry)資料中設定執行的
木馬程式?

一般而言, 只要是多種功能的任何一種木馬程式(特別是
所謂的木馬 Server 程式), 一定都具備一個共通的特點
:都會設定一進入 Windows 之後安安靜靜, 無聲無息的
自動執行, 所以若能對一進入 Windows 就自動執行的幾
個項目進行徹底完整的檢查, 絕對可以將 98% 秘密隱藏
在您電腦中的各類木馬程式一網打盡. 想要一進入 
Windows 就自動執行必須在啟動資料夾( 含 startUp 資
料夾), Win.ini, System.ini, 登錄資料機碼(Registry)
...四個地方進行設定, 這就是讓木馬程式無所遁形的主
要原因.

隱藏處【啟動資料夾】(或【StarUp 資料夾】)

這是沿自於 Windows 3.1 時代就有的傳統做法, 但也是
最笨拙的方式, 因為非常容易就被發現了, 雖然許多木
馬程式並不會藏匿在這裡,  不過市面上有些教導駭客的
書卻告訴駭客們將木馬程式設定在這裡自動執行, 如何
將這類笨拙三角貓設定的木馬程式找出來並刪除掉 ? 

請從【開始】/程式集/StarUp , 如果【StarUp 資料夾】
是空的就不用再看下去了, 如果有的話則請再三檢查該
程式是否為您安裝過某個程式或工具, 而且需要一進入
Windows 中就自動執行, 若不是就可按下滑鼠右鍵選擇
刪除,如果不確定可以先將該項目複製到其他資料夾中, 
然後將它先刪除, 再重開機進入 Windows 使用, 如果有
問題或某工具程式無法使用, 那就再將它複製回來, 否
則就繼續這樣使用吧!

隱藏處 Win.ini

這也是沿自於 Windows 3.1 時代的舊方法, 也是為了維
持與某些 Windows 3.x 版的程式而保留的, 不過對於駭
客而言卻比前一個啟動資料夾有用的多, 因為目前幾乎
所有的 Windows 都不會用到它,  而大多數的 Windows 
子民也不會去注意它, 因此當然就變成許多駭客植入木
馬程式後設定讓 Windows 自動執行的最愛, 所以請您使
用任何一個文書編輯程式將 Win.ini 讀進來後, 查看
【Windows】區間中的 Load 與 Run 參數是否有設定, 
查看所設定的是否是您安裝要使用的程式, 如果不是那
可能就是木馬程式的重要嫌疑犯了. 

[windows]
load=wpsload.exe c:\widows\lmouse\lbuttons.exe
NullPort=None
run=
SwapMouseButtons=No
device=HP LaserJet 4P(T),dlhp4s.LPT1;

load 參數執行兩個程式, 一個是 wpsload.exe, 
一個是lbuttons.exe, 中間以一個空白隔開
run 參數沒有執行任何程式

一般而言目前大多數的情況下都並不會有 Run 或 Load 
參數設定或是後面是空的, 因此若有指定某個程式則
 80% 肯定是木馬程式或病毒程式.

隱藏處 System.ini

可能許多熟悉 Windows 3.1 的讀者會覺得奇怪: 在 
System.ini 中可以設定自動執行某個程式嗎? 基本
上來說的確是不行的, 但是透過 shell 這個參數就
可以化不可能為事實, 也就是在[boot]區間 進行如
下的設定:

[boot]
shell=Explorer.exe c:\windows\server.exe

這樣當一進入 Windows 時就會自動執行檔案總管, 
檔案總管也會自動去執行 server.exe 這個程式, 如
此就可以達到載入木馬程式的目的, 所以我們就必須
要檢查一下您 Windows 目錄下的 System.ini 中是
否有這樣的設定, 如果有的話則是 99.99% 是木馬程
式, 因為幾乎沒有任何的程式或應用軟體會做這樣的
設定, 所以若有這項設定就殺掉它!

隱藏處 登錄資料中的機碼(Registry)

這是許多木馬程式最常慣用的方式, 而對於許多一般
電腦使用者而言也是最不容易找到的地方, 所以藏在
這裡非常恰當, 而在登錄資料(Registry) 中可設定
自動執行的機碼可分為三種.

一進入 Windows 就自動執行

這是一般最常見的機碼,

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnceEx
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
(Win9x 與 WinMe 才有)
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServicesOnce
(Win9x 與 WinMe 才有)
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run
HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Runonce

建議您使用 StartupCPL 這個免費的小工具來幫您
檢查, 而不要使用登錄編輯程式(Registry.exe).

目前一般屬於 Windows 系統執行的程式多半位於

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run

這個機碼中, 通常般含下列這幾個程式:
internat.exe scanregw.exe SysTray.exe 
taskmon.exe Sage.exe Rundll32.exe mstask.exe

自動載入執行的 DLL 檔案

有些木馬程式可能會設計成 .DLL 或 .VXD 的形式, 
然後利用一進入 Windows 時系統自動載入驅動程式
的方式來執行, 雖然目前這類的木馬程式很少見, 
但在理論上是可行的, 為了要能有效的搜尋與摧毀
可能存在的木馬程式, 還是要徹底檢查一下 Windows 
載入各類驅動程式的設定機碼

HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\Services
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet003\Services
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services

由於這些機碼中許多設定都與系統或週邊裝置有關, 
再加上並不是那麼容易看出來是否為木馬程式, 所以
除非確定它真是重要的嫌犯, 否則不要輕易刪除.


執行其他檔案實附帶執行

HKEY_CLASSES_ROOT\exefile\shell\open\command
@="\"%1\"%*"

這是一個非常特別的機碼, 主要是藉由每次執行任何
一個執行檔時變趁機執行一次木馬程式, 如此就可以
保持木馬程式一直在 Windows 中執行, 而且這個機
碼很難被注意或發現.

@="\"%1\"%*" 是一般正常的值, 但如果有一個執行
檔, 例如: @="windows.exe \"%1\"%*" 有一個 
windows.exe , 就 99.99% 肯定中毒. 

-- 待續 
.........................................................................................
想索取前幾期的電子報內容請至智邦生活館下載
我要下載過期電子報
.........................................................................................

好書能增進知識、提高學習效率
卓越的品質是旗標的信念與堅持
歡迎光臨旗標的網站 - http://www.flag.com.tw

版權所有人:旗標出版股份有限公司
本電子報內容未經授權請勿轉載