如何自我检查工作?

时间:2018-04-25 16:30:35

标签: c++ assembly

我的问题如何自我检查工作并在文件内存中检测自己的校验和并检查可执行文件是否已修改终止应用程序?像商业exe保护器vmprotect pelock themida等..以及如何使用算法和如何在自己的可执行文件中嵌入校验和并检测是否修改?怎么工作?例如检查md5或crc32二进制可执行文件的自校验和抱歉我的英文不好;)谢谢!

1 个答案:

答案 0 :(得分:1)

我认为尝试将校验和或哈希直接放入可执行文件时存在问题。这种方法意味着在确定可执行文件/二进制文件的校验和/哈希时会考虑校验和/哈希。您不能对校验和/哈希进行编码,而不会影响二进制/可执行文件的结果哈希/校验和。

在不了解您的情况的更多细节的情况下,您可能希望将二进制的哈希值存储在您尝试计算校验和/哈希值之外(例如,在服务器上或在相对于服务器的文件中。可执行文件等)。在构建程序后计算此哈希值。然后,您启动的程序可以将自己定位在磁盘上并计算自身的哈希值并与外部存储的哈希值进行比较。

很抱歉,如果评论会更好,但我没有代表发表评论。