15Sep

Apa itu ASLR, dan Bagaimana Cara Menjaga Keamanan Komputer Anda?

click fraud protection

aslr_cpu

Address Space Layout Randomization( ASLR) adalah teknik keamanan yang digunakan dalam sistem operasi, yang pertama kali diterapkan pada tahun 2001. Versi terbaru dari semua sistem operasi utama( iOS, Android, Windows, macos, dan Linux) dilengkapi dengan perlindungan ASLR.Namun dalam seminggu terakhir, sebuah metode baru untuk melewati ASLR telah ditemukan. Jadi, haruskah anda khawatir?

Bagi mereka yang tidak memiliki latar belakang pemrograman tingkat rendah, ASLR bisa membingungkan. Untuk memahaminya, Anda harus terlebih dahulu memahami memori virtual.

Apa itu Memori Virtual?

Virtual Memory adalah teknik manajemen memori dengan banyak manfaat, namun ini terutama dibuat agar pemrograman menjadi lebih mudah. Bayangkan Anda memiliki Google Chrome, Microsoft Word, dan beberapa program lainnya yang terbuka di komputer dengan RAM 4 GB.Secara keseluruhan, program di komputer ini menggunakan RAM lebih dari 4 GB.Namun, tidak semua program akan aktif setiap saat, atau membutuhkan akses simultan ke RAM itu.

instagram viewer

Sistem operasi mengalokasikan potongan memori ke program yang disebut halaman .Jika RAM tidak cukup untuk menyimpan semua halaman sekaligus, halaman yang paling mungkin dibutuhkan disimpan pada hard drive yang lebih lambat( tapi lebih luas).Bila halaman yang tersimpan dibutuhkan, mereka akan mengganti spasi dengan halaman yang kurang diperlukan saat ini di RAM.Proses ini disebut paging, dan meminjamkan namanya ke file pagefile.sys di Windows. Memori virtual

memudahkan program untuk mengelola memori mereka sendiri, dan juga membuat mereka lebih aman. Program tidak perlu khawatir di mana program lain menyimpan data, atau berapa sisa RAM yang tersisa. Mereka hanya bisa meminta sistem operasi untuk memori tambahan( atau mengembalikan memori yang tidak terpakai) jika diperlukan. Semua program melihat adalah potongan alamat memori tunggal yang terus menerus untuk penggunaan eksklusifnya, yang disebut alamat virtual. Program tidak diijinkan untuk melihat memori program lain.

Ketika sebuah program perlu mengakses memori, sistem tersebut memberikan alamat virtual. Sistem operasi menghubungi unit manajemen memori CPU( MMU).MMU menerjemahkan alamat virtual dan fisik, mengembalikan informasi tersebut ke sistem operasi. Tanpa titik apakah program berinteraksi langsung dengan RAM.

Apa itu ASLR?

Address Space Layout Randomization( ASLR) terutama digunakan untuk melindungi terhadap serangan buffer overflow. Dalam buffer overflow, penyerang memberi makan fungsi sebanyak data sampah karena dapat menangani, diikuti oleh muatan berbahaya. Payload akan menimpa data program yang ingin diakses. Petunjuk untuk beralih ke kode lain adalah muatan biasa. Metode jailbreakMe yang terkenal dari jailbreaking iOS 4, misalnya, menggunakan serangan buffer overflow, yang mendorong Apple untuk menambahkan ASLR ke iOS 4.3.

Buffer overflows membutuhkan penyerang untuk mengetahui di mana setiap bagian program berada di memori. Mengetahui hal ini biasanya merupakan proses trial and error yang sulit. Setelah menentukan itu, mereka harus membuat muatan dan menemukan tempat yang cocok untuk menyuntikkannya. Jika penyerang tidak tahu dimana kode target mereka berada, mungkin sulit atau tidak mungkin untuk memanfaatkannya.

ASLR bekerja bersamaan dengan manajemen memori virtual untuk mengacak lokasi berbagai bagian program di memori. Setiap kali program dijalankan, komponen( termasuk tumpukan, tumpukan, dan perpustakaan) dipindahkan ke alamat yang berbeda dalam memori virtual. Penyerang tidak bisa lagi belajar dimana target mereka melalui trial and error, karena alamatnya akan berbeda setiap saat. Umumnya, aplikasi perlu dikompilasi dengan dukungan ASLR, namun ini menjadi default, dan bahkan dibutuhkan di Android 5.0 dan yang lebih baru.

Jadi Apakah ASLR Masih Melindungi Anda?

Selasa lalu, periset dari SUNY Binghamton dan University of California, Riverside, mempresentasikan sebuah makalah berjudul Jump Over ASLR: Prediktor Serang untuk Melompati ASLR.Rincian kertas tersebut adalah cara untuk menyerang Branch Target Buffer( BTB).BTB adalah bagian dari prosesor yang mempercepat jika pernyataan dengan memprediksi hasilnya. Dengan menggunakan metode penulis, adalah mungkin untuk menentukan lokasi instruksi cabang yang diketahui dalam program yang sedang berjalan. Serangan yang dimaksud dilakukan pada mesin Linux dengan prosesor Intel Haswell( diluncurkan pertama kali pada 2013), namun kemungkinan bisa diterapkan pada sistem operasi dan prosesor modern manapun.

Yang mengatakan, Anda seharusnya tidak harus putus asa. Makalah ini menawarkan beberapa cara agar pengembang perangkat keras dan sistem operasi dapat mengurangi ancaman ini. Teknik ASLR anyar yang lebih baru akan membutuhkan usaha lebih banyak dari penyerang, dan meningkatkan jumlah entropi( keacakan) dapat membuat serangan Jump Over tidak layak dilakukan. Kemungkinan besar, sistem operasi dan prosesor yang lebih baru akan kebal terhadap serangan ini.

Jadi apa yang tersisa untuk yang harus Anda lakukan? Jump Over bypass baru, dan belum terlihat di alam bebas. Saat penyerang memanfaatkannya, kekurangannya akan meningkatkan potensi kerusakan yang dapat ditimbulkan penyerang pada perangkat Anda. Tingkat akses ini belum pernah terjadi sebelumnya;Microsoft dan Apple hanya menerapkan ASLR dalam sistem operasi mereka yang dirilis tahun 2007 dan yang lebih baru. Bahkan jika gaya serangan ini menjadi biasa, Anda tidak akan menjadi lebih buruk dari pada saat Anda kembali pada hari Windows XP.

Ingatlah bahwa penyerang masih harus kode mereka pada perangkat Anda untuk melakukan kerusakan. Cacat ini tidak memberi mereka cara tambahan untuk menginfeksi Anda. Seperti biasa, Anda harus mengikuti praktik terbaik keamanan. Gunakan antivirus, jauhi situs dan program samar, dan pertahankan perangkat lunak Anda tetap up to date. Dengan mengikuti langkah-langkah ini dan menjaga aktor jahat dari komputer Anda, Anda akan seaman Anda pernah melakukannya.

Image Credit: Steve / Flickr