我刚刚完成了一个 linux 安全模块,它在可执行文件开始执行时验证它们的完整性(使用数字签名)。现在我想更深入一点,并想在运行时检查文件的完整性(即定期检查它们 - 因为我主要处理启动并永远运行的进程......)所以攻击者不是能够在不被识别的情况下更改主内存中的文件(至少在一段时间后)。
这里的问题是我完全不知道如何检查文件的当前内存映像。上面提到的我的身份验证方法使用了 mmap-hook,每当文件在执行之前被 mmaped 时都会调用它,但据我所知,LSM 框架不提供用于定期检查的工具。
所以我的问题是:有什么提示我应该如何开始这个吗?如何读取内存映像并检查其完整性?
谢谢