现在的位置: 首页 > 综合 > 正文

纯手工保护光盘数据(转)

2012年08月24日 ⁄ 综合 ⁄ 共 1726字 ⁄ 字号 评论关闭

 

本文发表在《黑客X档案》的2008年第3期上,今天把它贴出来,本文所用到的技术绝对前无古人,比较新奇,教你如何欺骗Windows的资源管理器。        转载请注明出处:http://hi.baidu.com/biweilun

纯手工保护光盘数据    作者:毕伟伦

在这个时代,资源的保护无疑也是一个重轴戏,为了保护资源,各式各样的方法如雨后春笋一样层出不穷,相应的破解也应运而生。今天我给大家讲解一种另类方法,纯手工就能保护自己的光盘资源不被复制,而不需要去购买什么光盘加密狗之类的收费软件,也不需要痛苦地学习修改光盘的数据轨道,而且无法被破解(除非汇编Windows)。废话不多说了,下面就听笔者慢慢道来。

在这里我先说一下,光盘镜像中记录文件长度信息的机制,光盘镜像中的文件信息是如何被存储和读取的,又是记录在哪里的。看下表

字节

功能

01

目录长度

02

延伸属性

03-10

文件长度位置

11-18

文件大小

19-25

文件创建日期和时间

26

文件属性

27

文件单位大小

28

文件交错间隙大小

29-32

容量顺序编号

33

文件名长度

单说不练空把式,首先把一个文件做成ISO镜像,我用的是WinISO(因为对Nero没好感),封装的文件是一个wav波形文件,当然你也可以用其他类型的文件(如图1)。

 

现在我用十六进制编辑器Hedit,打开这个ISO文件并搜索字符串WINDOWS.WAV,这个就是封装的文件了,找到了这个字符串在0000000A854到0000000A869(如图2)。

 

WINDOWS.WAV对应的十六进制表示是57 49 4E 44 4F 57 53 2E 57 41 56,现在看到57前面的那个字节了吗?是0B,这个字节就是第33个字节了,存储的是WINDOWS.WAV的文件名长度(将0B转换成10进制就是11)。

向下拉动滚动条,在0000000B05E到0000000B073可以看到有个W.I.N.D.O.W.S.w.a.v(如图3),

 

它对应的十六进制表示是57 00 49 00 4E 00 44 00 4F 00 57 00 53 00 2E 00 77 00 61 00 76,这个是WINDOWS.wav的宽字符形式,前面的那个是窄字符形式。回到前面的WINDOWS.WAV,在第33字节上往前数,一直数到11-18字节,可以看到是AC 11 2C 00 00 2C 11 AC,这就是WINDOWS.WAV的文件大小信息所在了(如图4)。

 

而AC 11 2C 00 00 2C 11 AC是由两个4个字节组合而成的,前4个字节是按从低到高反方向排列的,这2段4字节成对称分布。实际上,我们的文件WINDOWS.WAV的打开是十六进制表示下的2C11AC,为了验证一下是否正确,我将其转换为十进制的结果是2888108,然后与源文件大小进行了对比(如图5),注意,大小的单位是字节(byte)。

 

接下来,我就要修改这个ISO文件中存储的文件大小信息,这样来欺骗Windows资源管理器。4字节,最大的十六进制是多少呢,无容置疑,当然是FF FF FF FF啦!对称再按机制合成,也就是FF FF FF FF FF FF FF FF,那就用FF FF FF FF FF FF FF FF来替换WINDOWS.WAV前面的第11-18字节AC 11 2C 00 00 2C 11 AC。往下看到WINDOWS.wav的宽字符形式前面,发现也有个AC 11 2C 00 00 2C 11 AC,同样用FF FF FF FF FF FF FF FF来替换(如图6)。

 

好了,来保存下,本来的ISO是BIWEILUN.ISO,这个就取名BIWEILUN1.ISO,我把BIWEILUN1.ISO刻录成光盘。打开光盘,里面就是WINDOWS.wav了,本来源文件大小是2.75M,现在却变成了3.99G了。然后我想将这个文件复制到F盘里,F盘还有8G可用,资源管理器却显示无法复制了(如图7)。

 

就这样,我们就顺利地欺骗了Windows资源管理器,光盘给资源管理器提供了一个虚假的信息,文件大小远大于光盘容量,所以复制被拒绝,但是光盘里的文件运行却不受影响。本文没什么技术含量,但是却很新奇,又不难上手,推荐给大家使用。最后希望大家有空来我的博客http://hi.baidu.com/biweilun转转。

 

抱歉!评论已关闭.