`
yidongkaifa
  • 浏览: 4063589 次
文章分类
社区版块
存档分类
最新评论

破解Word文档保护全过程

 
阅读更多

今天朋友在网上找了一篇资料,想复制内容但却被保护,根本无法复制,更不能修改。文档传给我一看还不是简单的读写密码保护,而是用了文档保护,连选择文本都不行,光标只能定位在首、尾,取消文档保护需要密码。

上次使用软件破解修改权限的密码,结果算了半天也没算出来,最后放弃了。这回我可不想再算了,于是想碰碰运气,试试最简单的一些可能的密码123、0000等,没试出来,计算机试出来都得好些年,等我试出来胡子都白了。

此时,想到WORD支持XML格式,而XML文档就是一个文本文件,这个它就没办法加密了吧?!于是我打开WORD文档,另存为XML文件,然后使用UltraEdit打开,发现很大,但有一点使我很高兴,就是看到前面一部分全是用XML标记的文字,看来就是WORD文档的内容,而下面一部分是很大一段的字母,没有什么规则,好像是用ASCII标记的二进制数据,搞得XML文件很大。

我先用Visual Studio打开,想把二进制的去掉,但又怕去掉之后丢失格式信息。然后我就试着用IE打开看看XML的结构,打开时一个令我更高兴的事情发生了,IE提示我是否下载一个WORD文档。看来IE认出来XML里面包含着一个WORD文档,应该是这样的:

前半部分是用XML标记的WORD文档内容,后半部分是用ASCII表示的二进制数据,这些数据恰好就是一个完整的WORD文档。如果是这样的话去掉后面的二进制数据就相当于把一个附件去掉了,就不会破坏原来文档的内容。

接一来,我就用Visual Studio重新打开XML文件,大至地把后面的二进制部分全部删除,然后使用它的自动格式化功能格式化了一个内容,补齐了XML标记。然后使用WORD打开XML文件,结果就稍微提示了一个框,好像是选择一下样式,而原来文档内容则完好无捐地展现在了我的面前。O了!

最后,另存为WORD的DOC格式!

但还是发现一个问题,就是文档中的图都没有了,可能是我删多了。

我仔细看了一下XML文件,原来那些二进制数据是插图的数据,一开始有一节是

<part pkg:name="/word/_rels/document.xml.rels" pkg:contenttype="application/vnd.openxmlformats-package.relationships+xml" pkg:padding="256"><br>这一节是内嵌的对象,如图片等,下面每一节代表一个对象配置项,如</part>

<relationship id="rId28" type="&lt;a href=" http:>http://schemas.openxmlformats.org/officeDocument/2006/relationships/image" Target="media/image19.png"/&gt;</relationship>

便是一个图片对应的图片,target属性就是该图片对应的二进制数据的XML节点。

看来这些数据是不用删的。

于是我又打开XML文件,搜索一下protect,找到这样一节:

<documentprotection w:edit="forms" w:formatting="1" w:enforcement="1" w:cryptprovidertype="rsaFull" w:cryptalgorithmclass="hash" w:cryptalgorithmtype="typeAny" w:cryptalgorithmsid="4" w:cryptspincount="50000" w:hash="Vc0VNAQI2oPtj+vdnthDjNHYQU0=" w:salt="xK9Fq80eyTuRInVqKS2Gag=="></documentprotection>

看来就是它了,这是文档保护(documentProtection)的配置内容,使用的是RSA加密算法,还有几上属性就是加密算法的相应数据了。把它注释掉!再用WORD打开,PERFECT!文档保护彻底去掉了,文档内容才是真正的一点儿没变!

总结:破解步骤

用WORD打开文档,并另存为XML格式
使用文本编辑器,找到documentProtection 节,删除该节
使用WORD打开修改后的XML文件,另存为DOC格式,OVER!

这样想破解WORD的文档保护就很简单了,过两天有时间写一个很简单的工具,就可以方便地去掉WORD的文档保护了。软件很简单,好像也没有必要。有空再说吧。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics