如何安全地学习使用十六进制编辑器?

时间:2013-12-02 00:23:26

标签: linux hex-editors

我想以纯粹探索性的方式试验十六进制简单程序。我知道这会危及相关程序的功能(这很好),但是我的系统(Linux)运行随机编辑的二进制文件有什么风险呢?

可能发生的最坏情况是什么?是否应该总是避免一些变化,我可以采取预防措施?有没有与此相关的资源? (我已经搜索过,但找不到任何相关内容)

编辑:我应该指定我实际上并不打算随意编辑;这只是一个假设。

1 个答案:

答案 0 :(得分:0)

如果你想自信地使用十六进制编辑器,它有助于理解编译程序的结构(特别是ELF可执行文件,因为ELF是目前Linux中的典型可执行格式)。文件中的某些位置实际上并不是程序本身的一部分,而是告诉Linux如何加载和运行程序的元数据。

您还可以找到机器代码(或至少是汇编语言)的知识,因为您的系统CPU也非常宝贵。

在任何情况下,当您编辑任何不清楚字符串数据的内容时,您将更改元数据或指示CPU执行操作的实际指令。如果你不确切地知道你在做什么,如果你很幸运,程序会崩溃。如果你不幸运,你可能只是让它在每次修改的部分运行时默默地和巧妙地破坏某些东西,而你可能不会注意到它为时已经太晚而无法撤消。机器语言是CPU的实际语言,不受库限制等的约束;它拥有与您一样多的机器访问权限(有时甚至更多,如果它设置为以root身份运行或具有某些功能)。所以只要你可以做的任何伤害,程序也可以做到。