要对光盘编程,只能是编制程序用来读出上面的文件,不是解密,但是需要知道
它真正的文件名(可能只有作者心里清楚),我给你一个例子,原理:
(转载)
在Easy CD Creator中新建一个CD layout,放入空白CDR片,用左键点击CDR图标设定卷标,再用右键调出快捷菜单,定义其属性为ISO9660格式、Mode1:CDROM。建立一个要保密的目录,设为TEST,将一些文件拖入,如Pbrush.exe,然后选择File->Create Disk Image...菜单项建立Image文件设为TEST.CIF。打开UltraEdit并调入TEST.CIF文件,选中Search->Find菜单进行字串查找。确认输入TEST而且Find ASCII为开按Find Next进行查找。结果是让人疑惑的,TEST字串出现了三次!究竟是哪一个呢?于是我做了一个试验,分别将第一个和第二个“TEST”改为“TAST”“TBST”,然后进入Easy CD Creator,选File->Create CD form Disc Image...进行刻录,完成后在用资源管理器打开,发现该盘有一个TEST目录,但是却无法进入!错误信息是:“该文件夹已被移动或删除”。打开一个DOS窗口,输入命令“DIR”能列出目录“TEST”但无法用“CD TEST”进入,试着用“CD TAST”居然进入了而且里面的文件一个不少!于是我们掌握了一种使操作与显示不一致的欺骗手段:)。现在知道第三个“TEST”是用来显示的,所以在UltraEdit中就可以改它啦!在UltraEdit中再按两次F3键找到第三个“TEST”,可以发现前后有不少字节内容非0,但哪个是属性字节呢?再做一个试验,在Easy CD Creator中设置TEST目录的属性为隐藏(这样刻出的盘只要打开Windows设置还是可以看见),建立CIF文件后进行对比发现第三个“TEST”的“T”前面第8个字节由“02”变为“03”了,看来这就是属性字节了,将其变为“04”,再进行刻录,然后查看,这下在Windows和DOS窗口中都看不见了,要进入目录操作就只能用DOS命令“CD TEST”了。
通过上面的试验我们可以下一个结论:TEST.CIF文件中第一个“TEST”是进行具体操作的,第三个是实际显示的,通过改变这两个字串使之不一致可以很好的防止别人进入该目录,达到保密的目的;另一方面将第三次出现的字串前数第8个字节改为“04”可以很好的隐藏目录。下面我们就可以将这两种方法结合起来,将Windows和DOS操作的后门都堵上,彻底保证安全。首先按前面的方法修改CIF文件将目录隐藏,然后修改第一次出现的目录名中加一个空格,如“T ST”,这样由于目录被隐藏了一般人不知道如何进入,即使知道有隐藏目录由于DOS命令不允许目录和文件名出现空格,所以用“CD T ST”命令也是无法进入目录的。好了,这下全堵死了,我们自己如何访问自己的文件呢?方法是通过编程。下面是我在C++Builder中调用光盘上文件的一个范例:
ShellExecute(Handle,NULL,"h://t st//pbrush.exe",NULL,NULL,SW_SHOWNORMAL);
由于这里允许在目录名中使用空格,所以一切都解决了。在实际的使用中,我们可以编一个文件浏览程序放在隐藏目录中,然后在根目录下用一个程序通过上面的方法去调用这个浏览程序即可,当然这个调用程序本身要加上口令,否则就毫无意义啦
上面是我的心得,欢迎与我交流,我的EMAIL是bin.bin@990.net,主页是 http://studybk.my169.com 。
本文已稿,转载请注明