在 Oracle® Solaris 11.2 中确保文件的安全和确认文件完整性

退出打印视图

更新时间: 2014 年 7 月
 
 

如何比较同一个系统在一段时间内的清单

通过比较清单随时间的变化,您可以找出损坏或异常的文件、检测安全违规或排除系统的性能问题。

开始之前

您必须成为 root 角色。有关更多信息,请参见在 Oracle Solaris 11.2 中确保用户和进程的安全 中的使用所指定的管理权限

  1. 创建一个要在系统上监视的文件的控制清单。
    # bart create -R /etc > control-manifest
  2. (u53ef选)将清单保存在受保护的目录中供将来使用。

    例如,请参见如何创建控制清单中的Step 3

  3. 在以后的某个时间,准备一个与控制清单完全相同的清单。
    # bart create -R /etc > test-manifest
  4. ()对第二个清单进行保护。
    # mv test-manifest /var/adm/log/bartlogs
  5. 比较这两个清单。

    在对清单进行比较时请使用创建它们时所用的相同命令行选项和规则文件。

    # bart compare options control-manifest  test-manifest > bart-report
  6. 检查 BART 报告中的异常情况。
示例 2-2  跟踪同一系统中文件在一段时间内的变化

本示例说明了如何跟踪 /etc 目录在一段时间内的变化。通过此类比较,您可以查明系统上的重要文件是否受到安全威胁。

  • 创建控制清单。

    # cd /var/adm/logs/manifests
    # bart create -R /etc > system1.control.090713
    ! Version 1.1
    ! HASH SHA256
    ! Saturday, September 07, 2013 (11:11:17)
    # Format:
    #fname D size mode acl dirmtime uid gid
    #fname P size mode acl mtime uid gid
    #fname S size mode acl mtime uid gid
    #fname F size mode acl mtime uid gid contents
    #fname L size mode acl lnmtime uid gid dest
    #fname B size mode acl mtime uid gid devnode
    #fname C size mode acl mtime uid gid devnode
    /.cpr_config F 2236 100644 owner@:read_data/write_data/append_data/read_xattr/wr
    ite_xattr/read_attributes/write_attributes/read_acl/write_acl/write_owner/synchr
    onize:allow,group@:read_data/read_xattr/read_attributes/read_acl/synchronize:all
    ow,everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow
    4e271c59 0 0 3ebc418eb5be3729ffe7e54053be2d33ee884205502c81ae9689cd8cca5b0090
    /.login F 1429 100644 owner@:read_data/write_data/append_data/read_xattr/write_x
    attr/read_attributes/write_attributes/read_acl/write_acl/write_owner/synchronize
    :allow,group@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow,ev
    eryone@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow
    4bf9d6d7 0 3 ff6251a473a53de68ce8b4036d0f569838cff107caf1dd9fd04701c48f09242e
    .
    .
    .
  • 之后,使用相同的命令行选项创建一个测试清单。

    # bart create -R /etc > system1.test.101013
    Version 1.1
    ! HASH SHA256
    ! Monday, October 10, 2013 (10:10:17)
    # Format:
    #fname D size mode acl dirmtime uid gid
    #fname P size mode acl mtime uid gid
    #fname S size mode acl mtime uid gid
    #fname F size mode acl mtime uid gid contents
    #fname L size mode acl lnmtime uid gid dest
    #fname B size mode acl mtime uid gid devnode
    #fname C size mode acl mtime uid gid devnode
    /.cpr_config F 2236 100644 owner@:read_data/write_data/append_data/read_xattr/wr
    ite_xattr/read_attributes/write_attributes/read_acl/write_acl/write_owner/synchr
    onize:allow,group@:read_data/read_xattr/read_attributes/read_acl/synchronize:all
    ow,everyone@:read_data/read_xattr/read_attributes/read_acl/synchronize:allow
    4e271c59 0 0 3ebc418eb5be3729ffe7e54053be2d33ee884205502c81ae9689cd8cca5b0090
    .
    .
    .
  • 比较这些清单。

    # bart compare system1.control.090713 system1.test.101013
    /security/audit_class
    mtime  4f272f59

此输出表明自控制清单创建以来,audit_class 文件的修改时间已发生变化。如果出现意外变化,您可以进一步进行调查。