windows特殊文件或文件夾


考了很多文章,搜集了很多資料整理而成。
好的用途可以用來隱藏個人資料,防止誤刪,病毒免疫等等。
至於壞的方面,當然也可用來隱藏木馬等等,就看你怎么用了。
還有一個沒有搞明白,資料上也沒找到,請知道的指點一下,
名稱里含有"\"的文件或文件夾如何建立和刪除。


下面進入正文,首先介紹幾個基本的操作和dos命令
(1)如何進入命令行窗口:,
       開始---運行,或者win+R,打開運行窗口,之后輸入cmd回車;
(2)相關dos命令
       /?              任何一個dos命令后加該參數表示查看幫助,最常用的命令!!
       md              建立文件夾;可以建立多層目錄下的文件夾,比如 mkdir \a\b\c\d 。
       copy          復制文件
       xcopy          復制文件和目錄樹
       rd              刪除文件夾,參數/s表示刪除目錄樹,即包括子文件夾和文件;/q表示不用確認
       del              刪除文件,可以使用通配符。/f強制刪除只讀文件,/q表示不用確認
         在刪除命令后面跟上.參數就可以避免Windows檢查文件名的合法性,
             因此可以刪除含有Windows保留字或非法名字的文件。 
       dir /X           顯示為非 8dot3 文件名產生的短名稱。
(3)以下均假設當前目錄為在D盤根目錄,在命令行窗口輸入D:回車即可
(4)UNC 路徑格式,就是網上鄰居的路徑格式,比如d:\temp的UNC 路徑為\\.\d:\temp


1,利用Windows以設備命名文件夾拒絕服務漏洞
新建以下這些名字的文件(或文件夾):aux、com1、com2、prn、con、nul,系統會提示無法建立。
我們可以在命令行窗口中建立,然后將文件copy進去,這樣,文件打不開也刪不掉。


實現過程:
切換到DOS命令行狀態;其次在MS-DOS窗口的命令行提示符下,
通過“cd”命令進入到要創建文件夾所在的目錄,
之后在DOS命令行下再輸入字符串命令“md+設備名+\”,單擊回車鍵后,
在指定目錄下一個名稱為設備名的特殊文件夾就出現了。
考慮到設備文件夾在Windows狀態下是不能被刪除的,為此善於使用設備文件夾,
我們有時能可以用它來保存一些重要的信息,以防止這些信息被他人隨意刪除掉。


對於含有保留字的文件,當我們發出刪除指令的時候,Windows會檢查被刪除的文件是否有合法的路徑,如果你的文件名含有Windows認為的非法字符或保留字,那么刪除就會失敗。我們有3種方法可以刪除這類文件:


a)采用Linux或其他非Windows的操作系統,以Linux/Unix為例,可以使用rm命令刪除.


b)使用命令行工具的一個特殊參數解決: 
RD. 設備名\
DEL.


c)對於文件,如果可以使用通配符,那么也可以采用通配符解決: 
DEL PR?.* 
DEL LPT?.*


d)要刪除d盤下的 aux 文件夾,可在命令提示符下執行:rd /s \\.\d:\aux。
再比如要刪除d盤temp文件夾下的 nul.exe 文件,在命令提示符下執行:del \\.\d:\temp\nul.exe 即可。




2,利用WINDOWS命名漏洞命名的文件, 比如test.,即文件最后有一個點.
         建立這個文件的話可以用 md test..\  
         也可以新建一個test,然后用WINRAR改test為test..\
         這個文件夾雙擊無法打開,但是可以在運行窗口輸入 d:\test..\ 進入,進入后可進行文件的各項操作。
         刪除的話用             rd /s /q test.. 
         如果test.是文件的名字,那么刪除要用         del /f /q test..\


3.名為空的文件夾.這里所說的空名文件夾,主要指的是文件夾名稱為空白,具體地說就是文件夾的名稱為空格字符,這類特殊文件夾不僅可以在MS-DOS窗口中被正常訪問,而且還可以在Windows窗口中被訪問到,甚至我們能借助WinZip之類的壓縮工具來對其進行壓縮或解壓縮操作。
  
       (1)建立使用 md "\test\ \"
       這時可以看到D盤根目錄下的test文件夾下多了一個沒有名字的文件夾,雙擊可以打開,也可以在運行中輸入D:\test\ \
       可以在里面建立文件或者刪除文件。 
       刪除用       rd "D:\test\ \"


(2)切換到DOS命令行狀態;在MS-DOS窗口的命令行提示符下,
通過“cd”命令進入到要創建空白文件夾所在的目錄,
之后在DOS命令行下再輸入字符串命令“md+空格”,緊接着按下鍵盤上的Alt功能鍵,同時在數字小鍵盤上直接輸入數字“255”,這樣一來空格字符的ASCII碼就會自動出現在“md”命令之后,單擊回車鍵后,在指定目錄下一個名稱為空白的特殊文件夾就出現了。善於使用空白文件夾,我們有時能將一些重要的隱私信息隱藏其中,從而實現保護隱私安全的目的。




4.長文件名或非法字符導致文件或文件夾無法刪除
可以暫時把路徑中某些目錄改名字,或在命令行模式下使用8.3格式。
例如,“Linux Faq”的目錄變成8.3就是“LINUXF~1”了,通過“Linuxf~1”就能進入目錄了,
此后就可以使用Del命令刪除指定文件了。如果需要刪除目錄,則使用Rd命令。  
也可以進入要刪除文件的目錄后輸入“dir>del.bat”,把當前目錄的文件列表輸入到批處理命令文件“del.bat”中,
然后修改該批命令文件,僅保留文件或目錄名,並在文件或者目錄名稱前增加“del ”或者“rd”,運行批處理命令即可刪除。 
(經常有rar文件無法解壓,改個文件名后就可以了)


還有一種方法,就是利用windows目錄長度不能超過256字節的特性,可以利用subst命令將
一長度達到256字節的目錄映射為虛擬盤:"subst b: testtesttesttesttesttesttes…………………………"。
然后在虛擬出來的b:中建立一個長文件名目錄"testtesttesttestte…………",然后將一可執行文件copy到該
路徑下,去掉虛擬盤符映射:"subst b: /d",這樣用資源管理器是無法進入該目錄的,殺毒軟件也無法掃描
該路徑下的文件,而且在資源管理器中是無法刪除該目錄的,但可以使用8.3文件格式來運行該可執行文件:
"c:\testte~1\testte~1\test.exe",從而達到隱藏的目的。


5.改文件名稱,系統自身帶有很多的CLSID。用的就是它了.
eg:要隱藏的文件名為 a,則把它改成 a.{CLSID} 這里的CLSID有很多,如下只是一部分:


文件名.{00020810-0000-0000-C000-000000000046}       excel文檔
文件名.{00020900-0000-0000-C000-000000000046}         word
文件名.{5ef4af3a-f726-11d0-b8a2-00c04fc309a4}       回收站(滿)
這3個只是文件夾圖標變了,打開后還是隱藏不了,原形畢露:


文件名.{2227a280-3aea-1069-A2de-08002b30309d}       打印機
文件名.{21ec2020-3aea-1069-A2dd-08002b30309d}         控制面板
文件名.{208d2c60-3aea-1069-A2d7-08002b30309d}       網上鄰居
文件名.{992cffa0-F557-101a-88ec-00dd010ccc48}         撥號上網
文件名.{1a9ba3a0-143a-11cf-8350-444553540000}         收藏夾
比較特別,雙擊打不開,用右鍵盤第2個"打開"就行了...


文件名.{0CD7A5C0-9F37-11CE-AE65-08002B2E1262}         該名之后目錄為空
文件名.{645FF040-5081-101B-9F08-00AA002F954E}       回收站(空)
文件名.{20D04FE0-3AEA-1069-A2D8-08002B30309D}       我的電腦
這一辦法也是比較普通的...


或者在需要隱藏的文件夾里建立desktop.ini文件也可以達到效果,
把這個批處理保存為.bat文件,在要隱藏的文件里執行就可以了:


@echo off
echo [.ShellClassInfo]>desktop.ini
echo CLSID={645FF040-5081-101B-9F08-00AA002F954E}>>desktop.ini
REM 改進后有些地方如有空格的地方也可以用所以加上"號
attrib +s +h "%cd%"
rem 其實只要將上面加上隱藏就可以了不用將下面這行隱藏
attrib +s +h desktop.ini
echo cacls %cd% /t /c /e /g %username%:f>..\恢復隱藏.bat
echo attrib -s -h %cd%>>..\恢復隱藏.bat
cacls %cd% /t /c /e /p %username%:n


原理就是同上面的重命名差不多...




======================================================
一個具體的例子,引用別人的:


最近使用了一款名叫 E-文件夾加密大師,網上有強人用winrar也把它破了,在這就不說了
該軟件利用的是windows的一個文件名漏洞,即windows不能刪除com1.……和以“.”最后等命名的文件夾(這種文件夾名字只有在dos 模式才能創建,而且不是常規方式md c:\xxx..\             注意最后的"\"。com1文件夾的創建方法,"md \\.\c:\com1",刪除輸入"rd \\.\c:\com1";)。即,這哪是加密         只是簡單得把“加密”的文件或文件夾放到以着種名字命名的文件夾下面


不小心把加密數據刪除掉了,數據沒了好辦,用finaldata打開那個假的回收站就有了。可是


留下個隱藏的Th…….db文件夾,打開后是-sys文件夾-然后是com1.{21ec2020-3aea-1069-a2dd-08002b30309d}文件夾,該文件夾用的是控制面板的圖標。(因為{}中的windows中的地址


打印機.{2227A280-3AEA-1069-A2DE-08002B30309D}
控制面板.{21EC2020-3AEA-1069-A2DD-08002B30309D}
我的電腦.{20D04FE0-3AEA-1069-A2D8-08002B30309D}
回收站.{645FF040-5081-101B-9F08-00AA002F954E}


於是雙擊該文件夾便打開了控制面板,但地址欄中顯示的是該com1.{21ec2020-3aea-1069-a2dd-08002b30309d}文件夾的地址。


1、 com1.{21ec2020-3aea-1069-a2dd-08002b30309d}這個文件夾是關鍵,利用了一個WINDOWS的漏洞,即使用AUX,COM1,COM2,PRN,CON,NUL為文件名建立的文件(夾),即不能打開也不能刪除。所以程序會將待加密的文件復制到此文件夾中,使其無法訪問和刪除,此其一;
2、在最后一級目錄中有一個文件錄名稱為《 XXX.》,請注意文件名后的《.》,當建立的文件夾名稱包含這個小點后,同樣,該文件錄即不能打開,也不能刪除,LZ把它放在這里應該是為了保險起見,或者出於其它目的,俺還不太確定,此其二;
3、 com1.{21ec2020-3aea-1069-a2dd-08002b30309d}里{}內的ID為控制面板,RECYCLED為程序自動建立的文件夾,中有desktop.ini文件以及{645FF040-5081-XXXX-9F08-00AA002F954E}文件夾,其作用都是為了將文件錄偽裝成回收站,此其三。


知道了原理只能算是半途,因為刪除會報錯windows中刪除會出現地址不存在的錯誤


而DOS下 rd       d:\ XXX\com1.{21ec2020-3aea-1069-a2dd-08002b30309d} 也不行


然后是rd       D:\XXX\ 目錄非空,不行。接着用 rd /s D:\XXX\       提示是否刪除,輸入Y,回車。


報錯,程序正被使用……。這步就是關鍵了打開任務管理器 ,結束explorer.exe進程!


再次Y,回車。然后通過任務管理器運行 explorer,又見到桌面了,打開D盤看,那個文件夾不見了


如果recycled里邊也有可以接着 rd /s D:\recycled 和recycle 回收站沒了下次打開自己會生成 !

 

原文連接:http://blog.csdn.net/jiankangshiye/article/details/6800305。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM