背景是我正在查看来自 pico-CTF 的旧 CTF 挑战。您确实有 Makefile、二进制文件本身和对应的 libc 文件可用。但是,二进制文件不会在我的机器上运行,而是会因分段错误而中止。根据我提供的一篇文章,这是由于本地机器上的链接器(ld-linux-xxxxx.x.so)不匹配造成的。然后在写作中,他使用了不同的 ld 文件,一切都很好。所以我想知道你怎么知道你需要使用哪个ld文件。我知道您可以使用带有 --set-interpreter 选项的 patchelf 来正常运行该二进制文件,但是如何知道要使用哪个链接器让我大吃一惊。如果有人可以让我对此有所了解,或者至少将我指向一些我可以阅读的链接,那就太好了。到目前为止,我还没有发现任何有用的东西。
提前致谢。