Pada artikel ini, kita akan membahas serangan yang menargetkan aplikasi biner . Kita akan berbicara tentang dasar-dasar cara kerja memori komputer, dan bagaimana hal itu dapat dieksploitasi untuk membuat program melakukan kesalahan.

Random Access Memory (RAM) adalah tempat komputer menyimpan semua yang sedang “dipikirkan”, dalam bentuk urutan byte. Teks yang Anda baca saat ini ada di suatu tempat di RAM komputer Anda, begitu juga instruksi prosesor yang membentuk browser yang Anda gunakan untuk membacanya, dan sistem operasi yang menjalankan browser tersebut.

Serangan Aplikasi Biner

slot777 daftar

Masing-masing byte ini memiliki alamat unik, dan dalam banyak kasus, tidak ada perbedaan yang dibuat antara byte mana yang merupakan data dan byte mana yang merupakan instruksi untuk diikuti oleh komputer. Saat Anda membuat variabel dalam suatu program, Anda memberi tahu komputer untuk mengalokasikan sebagian kecil dari memorinya untuk variabel itu saat program dijalankan.

See also  Mesin Jepang Tipe Toyota 3S-FE/Tipe Mazda KJ-ZEM/Tipe Mitsubishi 4G93 Menguasai Dunia Otomotif

Pointer adalah variabel yang menyimpan alamat variabel lain. Sebagian besar bahasa pemrograman tidak mengharuskan Anda untuk khawatir tentang pointer, tetapi beberapa, seperti C dan C++ , melakukannya. Namun, hanya karena Anda tidak perlu khawatir tentang pointer saat pemrograman tidak berarti mereka tidak digunakan “di bawah tenda” bahasa.

Serangan Aplikasi Biner Menargetkan Memori

Pointer dapat direferensikan, yaitu proses membaca nilai pada alamat yang ditunjuk pointer. Misalnya, bayangkan Anda memiliki deretan kotak, bernomor nol hingga tujuh. Kotak satu berisi nilai 7, dan kotak tujuh berisi angka 36. Membaca isi kotak satu memberi Anda 7, tetapi dereferencing kotak satu memberi Anda 36.

Pointer null adalah pointer yang tidak menunjukkan apa-apa. Ini tidak sama dengan penunjuk yang menunjuk ke variabel dengan nilai 0: penunjuk ke nilai 0 seperti diberi kertas dengan tulisan 0 di atasnya, dan penunjuk nol seperti tidak diberi apa-apa. Mencoba melakukan dereferensi pointer null biasanya akan menyebabkan crash, tetapi terkadang dapat memungkinkan eksekusi kode arbitrer .

See also  Semua Tentang Internet of Things

Komputer memiliki jumlah memori yang terbatas, jadi penting untuk menjadi efisien. Jika semuanya bekerja dengan benar, program akan membatalkan alokasi memori yang tidak lagi mereka perlukan, tetapi terkadang terjadi kesalahan. Kebocoran memori terjadi saat memori yang dialokasikan tidak dilepaskan saat tidak lagi digunakan. Ini dapat menyebabkan program menghabiskan lebih banyak memori dari waktu ke waktu, hingga tidak ada lagi yang tersedia, menyebabkan crash.

By Admin