是否可以检查ELF可执行文件的“GNU_HASH”部分中的哈希值?

时间:2016-07-01 07:17:57

标签: linux hash digital-signature elf

当我反汇编ELF可执行文件时,我看到一个似乎包含哈希的GNU_HASH部分。我认为这是一个签名,以检查可执行文件是否被病毒修补或感染。

有没有办法检查这个签名? Linux在运行程序时会自动检查此签名吗?

1 个答案:

答案 0 :(得分:8)

  

当我反汇编elf可执行文件时,我看到一个包含a的部分   GNU哈希。我认为这是一个签名,以检查是否可执行   是补丁或被病毒感染。

不,不是。您混淆了哈希函数的两种常见用法:

ELF二进制文件包含一个“哈希部分”,允许快速查找ELF符号表中的符号,以加快链接速度。此部分称为“哈希部分”,因为它包含哈希表。它与完整性检查无关。

引用ELF规范:

  

哈希表

     

Elf32_Word个对象的哈希表支持符号表   访问。

来源:SYSTEM V APPLICATION BINARY INTERFACE,第94页