Das ASLR -Verhalten unterscheidet sich zwischen der VSCODE -Run -Taste und der BefehlszeileLinux

Linux verstehen
Anonymous
 Das ASLR -Verhalten unterscheidet sich zwischen der VSCODE -Run -Taste und der Befehlszeile

Post by Anonymous »

Das Buch sagte, dass ASLR bei Linux standardmäßig aktiviert ist, aber wenn ich versuche, es zu bestätigen, finde ich ein seltsames Problem: Wenn ich in VSCODE auf die Schaltfläche Ausführen klicke, gibt es immer eine feste Stapeladresse aus und ASLR funktioniert nicht, aber wenn ich die ausführbare Datei ausführe, die von VSCODE in Bash generiert wird, arbeitet ASLR. class = "Lang-C PrettyPrint-Override">

Code: Select all

#include 

int main() {
long local;
printf("local at %p\n", &local);
return 0;
}
Die Ausgabe des Klickens auf die Schaltfläche "C/CPP -Datei ausführen":

Code: Select all

local at 0x7fffffffd250
< /code>
Die Ausgabe des Ausführens der ausführbaren Datei in Bash (Mehrere Beispiele für zufällige Adressen): < /p>
local at 0x7ffed0965fb0

local at 0x7fff3eff7630

local at 0x7ffc0e083a00
Ich habe überprüft, ob ASLR auf meinem Computer geöffnet ist. Ich möchte wissen, was der Unterschied zwischen dem Klicken auf die Schaltfläche und dem Ausführen mit Bash?

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post