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

测量 阶段,您可以创建文件哈希,并将其存储为这些文件的扩展属性(xattrs)。通过文件哈希,您可以生成基于 RSA 的数字签名或基于 Hash 的消息身份验证代码(HMAC-SHA1),从而防止对扩展属性的离线篡改攻击。

先决条件

流程

  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

    示例输出显示带有 IMA 和 EVM 哈希值和 SELinux 上下文的扩展属性。EVM 添加了一个与其他属性相关的 security.evm 扩展属性。此时,您可以在 security.evm 上使用 evmctl 工具来生成基于 RSA 的数字签名或基于哈希的消息身份验证代码(HMAC-SHA1)的数字签名。

其他资源