使Linux二进制文件可移植(ELF标识符)

时间:2018-11-07 20:31:26

标签: linux gcc binaryfiles elf static-linking

我目前在使linux二进制文件可移植方面遇到困难。我已经尝试通过以下语法使用ELF Statifier:

statifier /bin/ls static-ls

然后尝试在都为64位的另一台机器上运行它,但它给我分段错误。我已经对Google进行了一些研究,这似乎是一个常见问题。现在,我还没有找到任何解决方案,想知道是否有人有解决方案?

我也尝试过Ermine,但是由于它不是免费软件(30天免费试用),因此我更喜欢使用ELF Statifier或其他解决方案,只要我可以制作linux二进制文件,我都会接受任何建议便携式的。

谢谢。

1 个答案:

答案 0 :(得分:1)

This thread 表明段错误可能是由 memory randomization

website of ELF Statifier确认随机化是一个问题:

  

指定的可执行文件并不总是在具有堆栈或VDSO随机化的系统上工作。不幸的是,我还找到了解决此问题的方法。   还有另一种解决方案:Ermine。   Ermine,不同于指示符,不受堆栈/ VDSO随机化的影响。

This thread 建议您可以关闭目标平台上的随机化方法来解决。 我不建议这样做,因为随机化是一种安全措施。 关闭它可能会使系统更容易受到攻击。

我想这意味着ELF Statifier在不影响目标系统的安全性的情况下将无法工作。