GNU/Linux >> Belajar Linux >  >> Linux

Nonaktifkan dan aktifkan kembali pengacakan tata letak ruang alamat hanya untuk saya sendiri

Dokumentasi untuk randomize_va_space sysctl pengaturan ada di Documentation/sysctl/kernel.txt di pohon sumber kernel. Pada dasarnya,

0 - Nonaktifkan pengacakan ruang alamat proses.

1 - Jadikan alamat mmap base, stack, dan halaman VDSO diacak.

2 - Selain itu aktifkan pengacakan heap.


Cara terbaik untuk menonaktifkan ASLR secara lokal pada sistem berbasis Linux adalah dengan menggunakan flag kepribadian proses. Perintah untuk memanipulasi bendera kepribadian adalah setarch dengan

-R , --addr-no-randomize

Menonaktifkan pengacakan ruang alamat virtual (mengaktifkan ADDR_NO_RANDOMIZE).

Berikut ini cara melanjutkan:

$> setarch $(uname -m) -R /bin/bash

Perintah ini menjalankan shell di mana ASLR telah dinonaktifkan. Semua keturunan dari proses ini akan mewarisi bendera kepribadian sang ayah dan dengan demikian memiliki ASLR yang cacat. Satu-satunya cara untuk memecahkan pewarisan flag adalah dengan memanggil program setuid (ini akan menjadi pelanggaran keamanan untuk mendukung fitur tersebut).

Perhatikan bahwa uname -m ada di sini untuk tidak meng-hard-code arsitektur platform Anda dan menjadikan perintah ini portabel.


Linux
  1. tumpukan kernel dan tumpukan ruang pengguna

  2. Nonaktifkan sinkronisasi vertikal untuk glxgears

  3. Bagaimana cara menyiram cache CPU untuk wilayah ruang alamat di Linux?

  1. Bash - Perintah tanggal dan spasi

  2. git gc:tidak ada ruang tersisa di perangkat, meskipun tersedia 3GB dan tmp_pack hanya 16MB

  3. Bagaimana agar hanya pengguna, pid dan perintah yang dijalankan untuk proses tertentu? (Ubuntu 11.10)

  1. Tidak ada ruang tersisa di perangkat, tetapi partisi hanya setengah penuh dan inode tersedia

  2. Nonaktifkan perlindungan tumpukan di Ubuntu untuk buffer overflow tanpa flag compiler C

  3. Ubah pemilik dan grup hanya untuk pemilik tertentu