ELF-64 испорченный переводчик, каковы возможные причины? (похоже на проблему переполнения) - PullRequest
0 голосов
/ 12 января 2019

У меня есть исполняемый файл ELF-64, который говорит "Нет такого файла или каталога" при выполнении.

Затем я приступил к использованию команды file <filename>, чтобы увидеть, что не так, и интерпретатор выглядит как мусор:

example.poly: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, 
interpreter \310\367\323\367\320\301\302\037\001\331\001\321\001\302\367\321x86-64.so.2
, for GNU/Linux 3.2.0, not stripped

Я знаю, что обычный переводчик должен выглядеть interpreter /lib64/ld-linux-x86-64.so.2 так что я подозреваю переполнение кода. Но странная вещь в какой-то другой операционной системе, такого повреждения не происходит. Это происходит только время от времени. Поэтому мне интересно, возможно ли даже испортить интерпретатор файлов и каковы другие возможные причины этого? И, если возможно, кто-нибудь может указать на ту часть исходного кода, которая вызывает это.

Если это поможет, это хранилище, из которого я пытаюсь изучить код (это относительно короткий код, написанный на языке nasm): https://github.com/loreloc/makepoly

...