它之所以這樣可怕,有三點主要原因:
1.該文件在Windows中的默認圖標與記事本非常類似。
2.在Windows的默認狀態下,“碎片對象”文件的擴展名(“.SHS”)是隱藏的,即使你在“資源管理器工具文件夾選項查看”中設置成顯示所有文件名的擴展名,“.SHS”也還是隱藏的,這是因為Windows支持雙重擴展名,如“iloveyou.txt.shs”顯示出來的名稱永遠是“iloveyou.txt”。
3.這種SHS附件病毒制造起來非常容易,半個小時就可以學會,也不需要編程知識(“Format c:”大家都敲得出來吧)。
下面我們就一起來看看這個“隱身殺手”的真正面目吧!
一、技術背景
早在1992年的Windows 3.1版本中,微軟就引入了OLE(Object Linking and Embedding,對象鏈接與嵌入)技術。這項技術能在一個文件中鏈接或嵌入另一個文件,例如在寫字板或Word中可以鏈接或嵌入另一個文本文件、圖像文件或聲音文件等。當我們在Word中嵌入一個Excel文時,在Word會出現一個Excel文件圖標及文件名稱,雙擊這個圖標就可以調用Excel程序編輯該文件了,這項技術大大方便了文件的操作。
為了能將這種嵌入文件中的“對象”方便地(使用復制方式)從一個文件移入另一個文件(或者說被其它文件調用、與其它文件共享此“對象”),Windows使用了另一種技術Shell Scrap Object(簡稱SHS),它能將嵌入文件中的“對象”包裝成一個“碎片對象”文件,以備復制到其它文件中。
二、實例
我們就來看看怎樣創建一個格式化軟盤的“碎片對象”文件。
1.創建一個只包含一個空格(為了減小文件體積)的文本文件,任意取名。
2.打開記事本,將此文件拖放入記事本。也可以點擊記事本菜單欄中的“插入對象”,彈出“插入對象”對話框,選中“從文件創建”,然后點擊“瀏覽”按鈕選擇要插入的文件。
3.選中該插入對象的圖標,選擇菜單欄中的“編輯包對象編輯包”(如圖1)。在彈出的“對象包裝程序”對話框中,選擇菜單欄中的“編輯命令行”,然后輸入如下命令:Format.com a: /autotest,點擊“確定”,此時,內容欄中會顯示出命令內容。
4.點擊外觀欄中的“插入圖標”按鈕,會彈出一個警告對話框,確認,然后任選一個圖標。
5.選擇菜單欄中的“編輯卷標”,為此嵌入對象取一個名稱(會替換原來的文件名稱)。點擊“文件”菜單中的“更新”,然后關閉此對話框。
6.將剛剛建立的嵌入對象拖放到桌面上。文件的默認名是“碎片”,現在我們把它改成“iloveyou.txt”。打開電子郵件程序將桌面上的“iloveyou.txt”作為附件發出,或者將含有嵌入對象(帶有惡意命令)的文檔作為附件發出。
7.當郵件接收者誤將“iloveyou.txt.shs”文件作為“iloveyou.txt”(如前文所述,“.SHS”擴展名永遠是隱藏的)放心地打開時,或打開文件,點擊文件中的嵌入對象時觸發惡意命令(彈出DOS運行窗口,執行格式化命令),假如此時有另一個程序正在訪問軟驅,則會顯示如下信息“Drive A: is currently in use by another process. Aborting Format.”(A驅正被另一個程序訪問,格式化中止)。