-
-
[旧帖]
[求助]word2007和word2003
0.00雪花
-
发表于:
2009-5-12 13:35
1596
-
[旧帖] [求助]word2007和word2003
0.00雪花
各位大侠,我知道微软Word 2007相对于Word 2003,在文件格式、用户界面和功能等几乎各个方面都有了很大的变化,这些变化必然会导致在文档加密解密方面的变化。前面也有帖子提到2003以前版本的加密流程(
http://bbs.pediy.com/showthread.php?p=369640&highlight=word#post369640)
Word加密过程: 97,2000,XP,2003
(1)将最多15字节的口令->Unicode->md5
(2)取前5字节+16字节随机数a1=21字节,反复16次得336字节->md5
(3)取前5字节(s[5])+4字节计数器(初始0)共9字节->md5后作为RC4的密钥对文档进行加密.每加密512字节计数器+1后重复(3),即第6字节顺序变化
(4)另取随机数a2->md5得b,a2和b用RC4的第一次密钥加密后的32字节AB存放文档特定位置:i=(*((int *)(data+0x240))+0x200);i-=i%512
从i处开始每512字节找01 00 01 00,其后的48字节就是a1和AB
说明:
(1)0x200处标志码 \xEC\xA5\xC1\x00
(2)0x20B字节低位为1表示加密
由此提出破解方法1:穷尽5字节s,(4)中的AB可用于验证,只要知道这5字节即可解密文档。(直接穷尽约需10天! )
改进方法2:建立数据库直接查表
我想知道word新版的2007版本的加密流程是怎样的?破解时和以前的版本有什么不同?还有,从哪儿可以下到破解word加密文档的c++源代码,谢谢!
[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!