關(guān)于shs文件怎么用wps打開,shs文件用什么打開這個問題很多朋友還不知道,今天小六來為大家解答以上的問題,現(xiàn)在讓我們一起來看看吧!
1、SHS文件是碎片文件。
2、 *碎片對象文件* 很多人都應該都見過windows產(chǎn)生的碎片文件,windows中有一種被稱為碎片對象的文件(.shs文件)。
3、如果你在郵件附件中收倒一份這樣的文件,你敢不敢打開它呢。
4、估計很多人都不會覺得這種文件是一個威脅。
5、原因有幾點: 1 碎片對象文件的缺省圖標是一個和記事本文件圖標相類似的圖標,很容易會被誤認為是一些文本的文檔,用戶對他的警惕心理也比較小。
6、 2 .shs是一個無條件隱藏擴展名的文件。
7、即使是在“資源管理器工具文件夾選項查看”屬性中將"隱藏已知文件擴展名"屬性設(shè)為不隱藏,.shs文件仍然是隱藏。
8、很多人都喜歡將文件擴展名顯示出來(包括我),這樣對文件的情況了解的更清楚些。
9、可是一個test.txt.shs文件在瀏覽器中顯示依然是test.txt.在你已經(jīng)習慣了看到文件擴展名的情況下,你會對這樣一個文件起疑心嗎? 3 即使有疑心,你用任何殺毒軟件都不會找到這個文件的一點問題,因為這個文件本身就沒有病毒,也不是可執(zhí)行的,而且還是系統(tǒng)文件。
10、你會懷疑這樣的文件嗎?*測試方法*那么,碎片對象到底對用戶的計算機會造成什么威脅呢?我們一起來作個測試就明白了。
11、(測試環(huán)境是在windows 2000server中文版上進行的)。
12、我們先在硬盤上創(chuàng)建一個測試用的文件test.txt(我創(chuàng)建的位置是e:est.txt),然后我們來制作一個能刪除這個測試文件的碎片對象文件。
13、 1 先運行一個對象包裝程序(packager.exe),我的win2000 server是在/winnt/system32下 2 新建一個文件后,打開菜單 文件->導入,這時會彈出一個文件對話框,讓你選擇一個文件。
14、不用考慮,隨便選擇一個文件就可以了 3 然后打開 編輯->命令行,在彈出的命令行輸入對話框中輸入 cmd.exe /c del e:est.txt,確定 4 選然后在菜單中選擇 編輯->復制數(shù)據(jù)包 5 然后隨便在硬盤上找個地,我就直接在桌面上了。
15、在桌面上點擊鼠標右鍵,在彈出菜單中選擇 "粘貼",這時可以看到桌面創(chuàng)建了一個碎片對象文件。
16、 *技術(shù)原理*試驗完了,我們來講講原理吧。
17、懶的寫了基礎(chǔ)知識,到網(wǎng)上找了一段關(guān)于OLE的簡單介紹,作者看見別罵我啊,多多原諒 ---- OLE(Object Linking And Embedding) ---- 對象鏈接與嵌入,OLE允許你通過使用來自兩個或多個WINDOWS應用程序的資源來創(chuàng)造復雜的 文本,OLE提供了方便的技術(shù)用來將文字和來自不同程序的數(shù)字表、圖象和其他類型的數(shù)據(jù)組合起 來。
18、為此,OLE定義了將對象附屬于宿主文本的兩個基本方法,鏈接與嵌入: ---- 嵌入:一個嵌入對象包含在宿主文本中。
19、要創(chuàng)建或編輯一個嵌入對象的數(shù)據(jù)時,你可以在不 離開宿主文本的情況下激活源應用程序。
20、此結(jié)果對象將保存在宿主文本中,而不是另外其它的文件。
21、例如,你創(chuàng)建了一個字處理文本,其中包含嵌入Excel工作表。
22、為了執(zhí)行在此工作表上的操作, 你可以在此文本內(nèi)部激活Excel。
23、在保存了此字處理文件后,你同時也將嵌入的工作表數(shù)據(jù)保存了下來。
24、 ---- 鏈接:相比之下,一個鏈接對象卻保存在外部文件中。
25、宿主文本包含了對數(shù)據(jù)的引用以及對鏈接對象的映象,而不保存數(shù)據(jù)本身。
26、在修訂對象數(shù)據(jù)時,所做的改變顯示在宿主文本中但卻保存在外部文件中。
27、例如,包含一個鏈接Excel工作表對象的字處理文本提供給你對用于編輯工作表數(shù)據(jù)的Excel資源的完整訪問能力。
28、此文本包含了對分立工作表文件的引用。
29、如果此工作表恰好被鏈接入任何其它文本中則可以從任何一個它的宿主文本中編輯其數(shù)據(jù)。
30、Windows在需要時可以更新此鏈接關(guān)系(簡稱鏈),這樣便可以給每一個宿主文本提供數(shù)據(jù)的最新版本。
31、 也就是說,我們所輸入的命令作為OLE對象嵌入到對象包裝程序新建的文件中了,而微軟為了能方便的將嵌入到文件的對象進行復制,使用了一種技術(shù)Shell Scrap Object(簡稱SHS),就是說,當你在不同文件間復制對象時,windows是將對象包裝成一個碎片對象來進行復制的。
32、因此,一旦我們不是在文件間進行復制粘貼,而是直接將碎片對象粘貼到硬盤上,就會產(chǎn)生一個.shs文件。
33、這個碎片對象文件保存了原來對象的所具備的功能,原來對象包含的命令同樣會被解析執(zhí)行。
34、 shs文件既然不是可執(zhí)行文件,當然需要其他的程序來解析執(zhí)行了,我們?nèi)サ艚馕鰣?zhí)行的關(guān)聯(lián)就可以簡單防止這種文件中潛伏的威脅了。
35、 打開注冊表編輯器:regedit.exe 在[HKEY_CLASSES_ROOT.shs]主鍵下,將默認值ShellScrap刪除,然后在雙擊.shs文件,這回不會去執(zhí)行了,彈出讓我們選擇打開.shs文件需要的程序的對話框。
36、跟徹底一點的辦法是將[HKEY_CLASSES_ROOTShellScrapshellopencommand]下的打開.shs文件的關(guān)聯(lián)完全去掉,現(xiàn)在即使雙擊.shs文件,連選擇運行的程序也對話框也不打開了,直接要求在控制面板重建文件關(guān)聯(lián)。
37、 *題外的話*在windows系統(tǒng)中,還存在其他一些類似的的文件后綴名,如.shb、.lnk等等,例如攻擊者可以在快捷方式文件屬性指向中同樣嵌入惡意命令,對系統(tǒng)造成危害。
本文分享完畢,希望對大家有所幫助。
標簽:
免責聲明:本文由用戶上傳,如有侵權(quán)請聯(lián)系刪除!