Als «elf» getaggte Fragen

ELF steht für Executable and Linkable Format, ein Dateiformat für Dateien, die Maschinencode enthalten.


2
Älteste Binärdatei, die unter Linux funktioniert?
In einer Diskussion über die Abwärtskompatibilität in Linux - Kernel und GUI ABIs , Alan Cox stellt fest , dass „ mein 3.6rc Kernel wird eine Rogue binäre 1992 X gebaut noch läuft wieder kompatibel zu Anwendungen weit älter als Linux. “ Wie abwärtskompatibel sind die binären Schnittstellen der Linux- …


2
Was ist ELF Magic?
Ich habe bereits eine Diskussion über ELF-Magie gesehen, zuletzt die Kommentare in dieser Frage zum Austausch von Sicherheitsstapeln . Ich habe es schon einmal gesehen und ich habe es in meinen eigenen Boot-Logs gesehen. Aber ich bin mir nicht sicher, was es ist. Die Manpage zu Elf ist etwas überfordert, …
26 elf 

1
Was bedeutet "LSB", wenn in der Ausgabe von / bin / file auf ausführbare Dateien verwiesen wird?
Ich habe in der Ausgabe des Befehls unter Linux den Begriff " LSB- ausführbar" oder " LSB- gemeinsam genutztes Objekt" gefundenfile . Beispielsweise: $ file /bin/ls /bin/ls: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 2.6.32, BuildID[sha1]=4637713da6cd9aa30d1528471c930f88a39045ff, stripped Was bedeutet "LSB" in diesem Zusammenhang?


2
Bestimmen Sie, ob ein bestimmter Prozess 32- oder 64-Bit ist
Bei einem 2.6.x oder neueren Linux-Kernel und einem vorhandenen Benutzerland, das sowohl ELF32- als auch ELF64-Binärdateien ausführen kann (dh längst nicht mehr). Woher weiß ich, dass meine CPU 64-Bit-Betriebssysteme unter Linux unterstützt? ) Wie kann ich feststellen , ob ein bestimmter Prozess ( von PID) läuft im 32- oder 64-Bit-Modus? …
14 linux  64bit  proc  elf 


1
Wann kann ich Strings in einer ausführbaren Binärdatei bearbeiten?
Ich habe eine ausführbare Binärdatei. Nennen wir es a.out. Ich kann sehen, dass die Binärdatei Zeichenfolgen enthält $ strings a.out ... /usr/share/foo .... Ich muss die Zeichenfolge /usr/share/fooin ändern /usr/share/bar. Kann ich den String einfach ersetzen durch sed: sed -i 's@/usr/share/foo@/usr/share/bar@' a.out Dies scheint eine sichere Sache zu sein. Funktioniert …



1
Welche Teile einer ausführbaren ELF-Datei werden wo in den Speicher geladen?
Was ich schon weiß: Eine ausführbare ELF-Datei besteht aus mehreren Abschnitten. Offensichtlich werden die Abschnitte .text und .data in den Speicher geladen, da dies die Hauptteile des Programms sind. Damit ein Programm funktioniert, benötigt es jedoch mehr Informationen, insbesondere wenn es dynamisch verknüpft ist. Was mich interessiert, sind Abschnitte wie …

1
Warum entfernt `strip` keine Abschnittsüberschriften aus ausführbaren ELF-Dateien?
Eine minimale ausführbare ELF-Datei erfordert nur den ELF-Header und mindestens einen Programm-Header, um funktionsfähig zu sein. Wenn ich jedoch strip auf einer kurzen ausführbaren Datei ausführe, wird entschieden, die Abschnittsüberschriften-Tabelle oder den Abschnitt "Abschnittszeichenfolgen" nicht wegzuwerfen und sie beizubehalten, obwohl sie (soweit ich weiß) keinen Zweck für die Ausführung des …
9 executable  elf  strip 

2
Wie bestimmt der ELF-Loader die anfängliche Stapelgröße?
Ich studiere die ELF-Spezifikation ( http://www.skyfree.org/linux/references/ELF_Format.pdf ) und ein Punkt, der mir über den Programmladeprozess nicht klar ist, ist, wie und was der Stapel initialisiert wird Die anfängliche Seitengröße ist. Hier ist der Test (unter Ubuntu x86-64): $ cat test.s .text .global _start _start: mov $0x3c,%eax mov $0,%edi syscall $ …

1
Wie führt bash eine ELF-Datei aus?
Wenn ich auf meiner Linux Box bin, benutze ich Bash als Shell. Jetzt habe ich mich gefragt, wie bash mit der Ausführung einer ELF-Datei umgeht, wenn ich ./program eingebe und program eine ELF-Datei ist. Ich habe die bash-4.3.tar.gz gepackt, es scheint keinen magischen Zahlenparser zu geben, um herauszufinden, ob es …
8 bash  kernel  executable  exec  elf 

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.