md5sum / sha1sum / sha256sum
目前有多种机制可以计算文件的指纹码,我们选择使用较为广泛的 MD5, SHA1 或 SHA256 加密机 制来处理,我们拿NTP 软件来检查看看好了。我们下载的 NTP 软件版本为 4.2.8p3 这一版, 在官网上面仅有提供 md5sum 的数据而已,在下载页面的 MD5 数据为:
b98b0cbb72f6df04608e1dd5f313808b ntp-4.2.8p3.tar.gz
如何确认我们下载的文件是正确没问题的呢?这样处理一下:
root@study ~]# md5sum/sha1sum/sha256sum [-bct] filename
[root@study ~]# md5sum/sha1sum/sha256sum [--status|--warn] --check filename
选项与参数:
-b :使用 binary 的读档方式,默认为 Windows/DOS 文件型态的读取方式;
-c :检验文件指纹;
-t :以文字型态来读取文件指纹。
范例一:将刚刚的文件下载后,测试看看指纹码
[root@study ~]# md5sum ntp-4.2.8p3.tar.gz
b98b0cbb72f6df04608e1dd5f313808b ntp-4.2.8p3.tar.gz
# 看!显示的编码是否与上面相同呢?赶紧测试看看!
一般而言,每个系统里面的文件内容大概都不相同,例如你的系统中的 /etc/passwd 这个登入信息文件与我的一定不一样,因为我们的用户与密码、Shell 及家目录等大概都不相同,所以由 md5sum 这 个文件指纹分析程序所自行计算出来的指纹表当然就不相同啰!
好了,那么如何应用这个东西呢?基本上,你必须要在你的 Linux 系统上为你的这些重要的文件进 行指纹数据库的建立 (好像在做户口调查!),将底下这些文件建立数据库:
- /etc/passwd
- /etc/shadow (假如你不让用户改密码了)
- /etc/group
- /usr/bin/passwd
- /sbin/rpcbind
- /bin/login (这个也很容易被骇!)
- /bin/ls
- /bin/ps
- /bin/top
这几个文件最容易被修改了!因为很多木马程序执行的时候,还是会有所谓的『执行序, PID』为了 怕被 root 追查出来,所以他们都会修改这些检查排程的文件,如果你可以替这些文件建立指纹数据 库。