環境変数があり、そのメモリ アドレスを取得しようとしています。私は持っている
memset(&buffer, 0x90, 517);
memcpy(&buffer[517-strlen(shellcode)],shellcode,strlen(shellcode));
setenv("EGG",buffer,1);
putenv(buffer);
printf("EGG address: 0x%1x\n", getenv("EGG"));
system("bash");
印刷されたメモリ アドレスは0x804b00c
. それは正しくないように見えました。GDB x/x で確認しました0x804b00c
。のメモリにアクセスできませんと表示されました0x804b00c
。getenv
基本的にガベージメモリを与えています。変数が設定され env
ていることを確認するために呼び出しましたが、設定されていました。EGG
のメモリ アドレスを取得できないのはなぜEGG
ですか?