最近升级日期:2009/09/15
6. 检验软件的正确性
6.1 md5sum / sha1sum 检验软件正确性 前面提到很多升级与安装需要注意的事项,因为我们需要克服很多的程序漏洞,所以需要前往 Linux distribution 或者是某些软件开发商的网站,下载最新并且较安全的软件文件来安装才行。 好了,那么『有没有可能我们下载的文件本身就有问题?』 是可能的!因为 cracker 无所不在,很多的软件开发商已经公布过他们的网页所放置的文件曾经被窜改过! 那怎么办?连下载原版的数据都可能有问题了?难道没有办法判断文件的正确性吗? 这个时候我们就要透过每个文件独特的指纹验证数据了!因为每个文件的内容与文件大小都不相同, 所以如果一个文件被修改之后,必然会有部分的资讯不一样!利用这个咚咚,我们可以使用 MD5 这个指纹验证机制来判断该文件有没有被更动过! 举个例子来说,台湾高速网络中心所提供的 CentOS 5.3 原版光盘下载点: http://ftp.twaren.net/Linux/CentOS/5.3/isos/i386/ 同时提供了 CentOS 5.3 所有光盘/DVD 的 ISO 文件 MD5 编码,透过这个编码的比对,
我们就可以晓得下载的文件是否有问题。那么万一 CentOS 提供的光盘映象档被下载之后,让有心人士偷偷修改过,再转到
Internet 上面流传,那么你下载的这个文件偏偏不是原厂提供的,呵呵!
你能保证该文件的内容完全没有问题吗?当然不能对不对!是的,这个时候就有
md5sum 与 sha1sum 这个文件指纹的咚咚出现啦!说说他的用法吧! md5sum / sha1sum 目前有多种机制可以计算文件的指纹码,我们选择使用较为广泛的 MD5 与 SHA1 加密机制来处理。 同样的,我们以高速计算机中心谈到的 CentOS 5.3 的网络安装映像档来处理试看看好了。 在上面的连结网址上面,你会看到几个文件:
如果你下载了 CentOS-5.3-i386-netinstall.iso 后,再以 md5sum 与 sha1sum 去检验这个文件时, 文件所回传的指纹码应该要与网站上面提供的文件指纹码相同才对!我们由网站上面提供的指纹码知道这个映像档的指纹为:
一般而言,每个系统里面的文件内容大概都不相同,例如你的系统中的 /etc/passwd 这个登陆资讯档与我的一定不一样,因为我们的使用者与口令、 Shell 及家目录等大概都不相同,所以由 md5sum 这个文件指纹分析程序所自行计算出来的指纹表当然就不相同罗! 好了,那么如何应用这个东西呢?基本上,你必须要在你的 Linux 系统上为你的这些重要的文件进行指纹数据库的创建 (好像在做户口调查!),将底下这些文件创建数据库:
这几个文件最容易被修改了!因为很多木马程序运行的时候,还是会有所谓的『运行序, PID』为了怕被 root 追查出来,所以他们都会修改这些检查排程的文件,如果你可以替这些文件创建指纹数据库 (就是使用 md5sum 检查一次,将该文件指纹记录下来,然后常常以 shell script 的方式由程序自行来检查指纹表是否不同了!),那么对於文件系统会比较安全啦! |
|||
本网页主要以Firefox配合解析度 1024x768 作为设计依据 鸟哥自由软件整合应用研究室