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 .plt, .got, .dynamic, .dynsym, .dynstr usw. Die Teile des ELF, die für die Verknüpfung von Funktionen mit Adressen verantwortlich sind.
Was ich bisher herausfinden konnte, ist, dass Dinge wie .symtab und .strtab nicht im Speicher geladen werden (oder nicht bleiben). Aber werden .dynsym und und .dynstr vom Linker verwendet? Bleiben sie in Erinnerung? Kann ich über den Programmcode darauf zugreifen?
Und gibt es Teile einer ausführbaren Datei, die sich im Kernelspeicher befinden?
Mein Interesse daran ist hauptsächlich forensisch, aber alle Informationen zu diesem Thema werden helfen. Die Ressourcen, die ich über diese Tabellen und die dynamische Verknüpfung gelesen habe, sind auf höherer Ebene. Sie erklären nur die Funktionsweise und nichts Praktisches über den Inhalt im Speicher.
Lassen Sie mich wissen, wenn etwas über meine Frage unklar ist.