24小时热门版块排行榜    

CyRhmU.jpeg
查看: 287  |  回复: 0
当前主题已经存档。

langxixi

[交流] 对四个可视签章软件的安全性测试

  为测试非常流行的MS Word/Excel电子签章软件的安全性,我们下载了四个公司的免费单机试用版软件(由于条件的限制,我们不能购买所有这类软件进行测试)。

  此次测试环境为Windows XP Professional,MS Word 2000, MS Excel 2000, MS Word 2003,MS Excel 2003。

  其它工具:Hex Workshop 4.1 共享版。

  四个软件产品在功能、操作方式上有很多相似之处,可视化做得都很好,和实际纸制文件的盖章、签名在视觉上较接近。四个软件在Word/Excel 2000、Word/Excel 2003中的表现一致。

     安全漏洞一:不控制格式,只控制文件的实际数据内容

  软件1签章后,文件内的字符不能再更改,一旦更改,签章不能通过验证。但对字符格式不加控制,如字号、字体颜色等。举一个例子,可以在文件中把某些字符设置成白色,因为文档的背景是白色的,这些字符实际不可见,签章(或签字)后任何人都可以再将白色字符改为黑色。

  下面是一个关于经费申请的Word文件,申请上写的看起来是1000,其实是10000,因为最后一个0是白色的,总经理王峰批准后,申请人又将最后一个0改为黑色。

  在Excel中,该漏洞依然存在,所不同的是在Excel中不能将把格中的单个字符改为白色,但可以把单个格子的所有字符改为白色。

     安全漏洞二:不实用且脆弱的文档保护

  软件1的设计者无疑也意识到了对文档格式不加控制可能带来的安全隐患,于是在产品中增加了文档锁定功能,文档锁定后,在Word/Excel中无法编辑文档,所有和编辑文档有关的按钮、菜单都不能使用。这一功能的目暮苊飨裕蟾钦隆⑶┳趾笏ㄎ牡担佣Vの牡凳油嫉牟豢杀洹5ü齏ord/Excel文档保护根本不能解决问题。

  首先,对于多级签名,文档保护并不是好办法。前一个签名者如果锁定文档,后一个签名者就无法签名,除非他知道解锁密码,才可以在解除文档保护后实施签名,而且签名后还要再用新密码锁定文档。但是,在网络环境下,如何才能让文档保护密码安全、方便地在不同的签名者之间传递呢?很明显,靠Word/Excel文档保护(锁定)来弥补1.1所述的安全漏洞是不实用的。

  其次,Word/Excel文档保护是相当脆弱的,很容易被击破。先来看Word文档保护,我们很容易地在Internet查到一种破解Word文档保护的方法,但用这种方法解除软件1的文档锁的努力失败了,这说明软件1的设计者在文档锁定上下了不少功夫,但我们使用了另一种更为彻底的方法很快就成功绕过了软件1的文档锁。

  我们首先构造Word文件,文件上有“10000”字样,该文件保存为1.doc,将“10000”最后一个0改为白色,文件保存为2.doc,用Hex Workshop比较两个文件,很快找到了控制字符颜色的区域都是以B*开头,将2.doc中控制字符颜色的一段中的FF FFFF改为00 0000(熟悉html的人都知道,FFFFFF代表白色,000000代表黑色),改完后,用Word打开2.doc,最后一个0变成了黑色。

  现在开始测试软件1对Word文档的保护。首先构造签名Word文件并锁定文件。

  软件1对Excel文档的保护同样脆弱,我们用Hex Workshop比较文档,很快发现Excel单元格字符的颜色控制数据在[SO1段,09代表白色,08代表黑色,直接用Hex Workshop更改数据,就可以更改单元格字符颜色,这一点对Excel 2000版和2003版都适用。为缩减篇幅,本文不再举例,感兴趣的读者可以自己动手试一试。
软件1的文档锁定功能和MS Word、Excel自带的文档保护功能同出一源,都是通过在文档中加专门标志,编辑器见到标志后,所有的编辑功能不能起作用,这种保护无疑是脆弱的,可以用16位编辑器直接编辑文件。

     安全漏洞三:文件可能被意外更改或被病毒更改

  如果一个已签章的文件未加文档保护,在用户阅读文档过程中,可能因意外的操作改变文档,例如在Word中不留意增加空格,在这种情况下,文档签章失效,用户有时不能将文件数据恢复到原样。由于签名时文档必须处于可编辑状态,所以,无法依靠文档保护(锁定)来防止文件内容的意外更改。

  另一个造成文档被意外更改的原因是病毒。虽然我们并没有测试用病毒感染签章文件,但根据常识,希望用户能完全防止病毒感染文件是不现实的。如果病毒造成文件实际数据内容改变,签章随即失效,如果病毒感染实际数据内容以外的部分,即使文档签章不会失效,但签章后的染毒可能造成不可预计的问题。

     测试结论

  其它3个软件都存在和软件1相同的问题。其中软件2、软件4都没有自己的文档保护功能,不知正式版是否具备该功能。如果软件不使用专有的文档保护功能,而使用Word自有的文档保护功能,这种保护无疑形同虚设。软件3是Word签章产品,签章后文档自动处于保护状态,无法编辑,但只要在Word菜单上选择“工具”-“解除文档保护”,文档就又处于可编辑状态了。相比之下,软件1是四个软件中文档保护作的最好的一个。

  测试结果发现,四个软件都存在着严重安全隐患。当文件内容的格式更改后,签名和签章都仍有效,说明四个软件只能通过签章保证文件部分数据的完整性。因为格式控制会直接影响到人们对可视内容的理解,在这种情况下进行电子签章、签名可能带来严重后果。虽然对Word/Excel可以使用文档保护功能来防止文档在签名后的改变,但对于多级签名,文档保护是不实用的,同时,Word/Excel文档保护也是非常脆弱的。由于签章过程需要文档处于可编辑状态,因此很难避免文件被意外更改,从而造成已有的签章失效。数字签名软件是对安全性要求很高的产品,以上这些安全性问题的是不能容忍的。

[ Last edited by 幻影无痕 on 2006-10-19 at 07:40 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 langxixi 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见