Bir x86_64 Linux üzerinde geri dönüş odaklı programlama istismarı üzerinde çalışıyorum. Bununla birlikte, araştırmam 64 bit Linux makinesinde ROP istismarının imkansızlığına yol açıyor çünkü tüm kod segmentleri boş bayt önde gelen adreslerde yükleniyor. Doğru mu?
Gdb, Bölümler: (gdb) i dosyası `/ home / ****** / Masaüstü / BOF / lib64 ', dosya türü elf64-x86-64. Giriş noktası: 0x400ffc 0x0000000000400190 - 0x00000000004001d4 .note.gnu.build-id 0x00000000004001d8 edilir - - 0x00000000004002f8 .rela.plt 0x00000000004002f8 edilir - 0x0000000000400312 0x0000000000400320 .init edilir - 0x00000000004003e0 0x00000000004003e0 Plt olduğunu - 0x0000000000494808 olan 0x00000000004001b0 .note.ABI etiketi 0x00000000004001b0 olduğunu .text 0x0000000000494810 - 0x000000000049614c 0x0000000000496150 __libc_freeres_fn olduğu - 0x00000000004961f8 0x00000000004961f8 __libc_thread_freeres_fn olduğu - 0x0000000000496201 0x0000000000496220 .fini olduğu - 0x00000000004b6224 0x00000000004b6228 .rodata olduğu - 0x00000000004b6230 __libc_atexit 0x00000000004b6230 olduğu - 0x00000000004b6288 __libc_subfreeres 0x00000000004b6288 olduğu - 0x00000000004b6290 __libc_thread_subfreeres 0x00000000004b6290 olduğu - 0x00000000004c32ac .eh_frame 0x00000000004c32ac olduğu - 0x00000000004c33b9 olup. gcc_except_table 0x00000000006c3ea0 - 0x00000000006c3ec0 is .tdata 0x00000000006c3ec0 - 0x0000000 0006c3ef8 .tbss 0x00000000006c3ec0 olduğu - 0x00000000006c3ee0 .fini_array 0x00000000006c3ee0 olduğu - - 0x00000000006c3ed0 .init_array 0x00000000006c3ed0 olan 0x00000000006c3ff0 .data.rel.ro 0x00000000006c3ff0 olduğu - - 0x00000000006c3ee8 0x00000000006c3f00 .jcr olan 0x00000000006c56f0 olduğu - 0x00000000006c4078 0x00000000006c4080 .got.plt olduğu - 0x00000000006c4000 0x00000000006c4000 .got olduğu .data 0x00000000006c5700 - 0x00000000006c8308 is .bss 0x00000000006c8308 - 0x00000000006c8338 is __libc_freeres_ptrs 0x0000000000400190 - 0x00000000004001b4 is .note.ABI-tag004001-d001d001
0x0000000000400312 0x0000000000400320 .init olduğu - - 0x00000000004001d8 - 0x00000000004002f8 .rela.plt 0x00000000004002f8 olan 0x0000000000494808 0x0000000000494810 .text olduğu - - 0x00000000004b6224 .rodata 0x00000000004b6228 olduğu - 0x0000000000496201 0x0000000000496220 .fini olduğu - 0x00000000004961f8 0x00000000004961f8 __libc_thread_freeres_fn olduğu - 0x000000000049614c 0x0000000000496150 __libc_freeres_fn olan 0x00000000004003e0 0x00000000004003e0 Plt olduğu - 0x00000000004b6230 __libc_atexit 0x00000000004b6230 olduğu - 0x00000000004b6290 __libc_thread_subfreeres 0x00000000004b6290 olduğu - - 0x00000000004c32ac .eh_frame 0x00000000004c32ac olduğu - 0x00000000004b6288 __libc_subfreeres 0x00000000004b6288 olan 0x00000000004c33b9 .gcc_except_table 0x00000000006c3ea0 olduğu - 0x00000000006c3ef8 .tbss 0x00000000006c3ec0 olduğu - - 0x00000000006c3ec0 .tdata 0x00000000006c3ec0 olan 0x00000000006c3ed0 .init_array 0x00000000006c3ed0 olduğu - 0x00000000006c3ee0 .fini_array 0x0000000000 olan 6c3ee0 - 0x00000000006c3ff0 .data.rel.ro 0x00000000006c3ff0 olduğu - - 0x00000000006c3ee8 0x00000000006c3f00 .jcr olan 0x00000000006c56f0 .Data 0x00000000006c5700 olduğu - - 0x00000000006c8308 .bss 0x00000000006c8308 olduğu - 0x00000000006c8338 __libc_freeres_ptrs kod 0x00000000006c4078 0x00000000006c4080 .got.plt olduğu - 0x00000000006c4000 0x00000000006c4000 .got olduğu >