Menu Close
Settings Close

Language and Page Formatting Options

Red Hat Training

A Red Hat training course is available for RHEL 8

30.8. 使用完整性测量架构收集文件哈希

完整性测量架构(IMA)的第一种级别是 测量 阶段,允许创建文件哈希并将其存储为这些文件的扩展属性(xattrs)。下面的部分论述了如何创建和检查文件的哈希。

先决条件

  • 启用完整性测量架构(IMA)和扩展验证模块(EVM),如 启用完整性测量架构和扩展验证模块 中所述。
  • 验证是否已安装 ima-evm-utilsattrkeyutils 软件包:

    # yum install ima-evm-utils attr keyutils
    Updating Subscription Management repositories.
    This system is registered to Red Hat Subscription Management, but is not receiving updates. You can use subscription-manager to assign subscriptions.
    Last metadata expiration check: 0:58:22 ago on Fri 14 Feb 2020 09:58:23 AM CET.
    Package ima-evm-utils-1.1-5.el8.x86_64 is already installed.
    Package attr-2.4.48-3.el8.x86_64 is already installed.
    Package keyutils-1.5.10-7.el8.x86_64 is already installed.
    Dependencies resolved.
    Nothing to do.
    Complete!

流程

  1. 创建测试文件:

    # echo <Test_text> > test_file

    IMA 和 EVM 确保 test_file 示例文件被分配了作为扩展属性存储的散列值。

  2. 检查文件的扩展属性:

    # getfattr -m . -d test_file
    # file: test_file
    security.evm=0sAnDIy4VPA0HArpPO/EqiutnNyBql
    security.ima=0sAQOEDeuUnWzwwKYk+n66h/vby3eD
    security.selinux="unconfined_u:object_r:admin_home_t:s0"

    示例输出显示与 SELinux 相关的扩展属性和 IMA 和 EVM 散列值。EVM 添加与其他属性相关的 security.evm 扩展属性。您可以使用 security.evm 上的 evmctl 程序来生成基于 RSA 的数字签名,或基于 Hash 的消息身份验证代码(HMAC-SHA1)。要成功执行前面的操作,您需要一个有效的可信或加密的密钥,存储在内核密钥环中。这个配置可防止离线修改扩展属性的攻击。