Skip to main content

Apa itu tumpukan buffer overflow?

Overflow buffer tumpukan adalah apa yang terjadi ketika suatu program membuat entri ke dalam memori komputer yang lebih panjang dari ruang yang dialokasikan.Dalam beberapa keadaan ini dapat merusak data lain dalam memori, menyebabkan masalah dalam menjalankan komputer.Dalam kasus lain, overflow buffer tumpukan dapat dieksploitasi dengan aplikasi jahat untuk mengendalikan bagian lain dari komputer.

Nama dari stack buffer overflow berasal dari tumpukan, yang secara efektif merupakan daftar aktif di mana data diatur: Istilah ini berasal dari analogi menumpuk item fisik.Satu versi dari ini,

adalah daftar yang digunakan program komputer untuk melacak berbagai bagian program, subrutin, yang beroperasi pada saat tertentu.Karena tumpukan panggilan beroperasi secara sementara dan perlu diakses dengan cepat, itu terletak di memori komputer daripada di penyimpanan permanen seperti hard drive. karena sistem operasi modern memungkinkan beberapa program untuk berjalan sekaligus, di sanaadalah kebutuhan untuk mengatur cara memori dialokasikan, termasuk untuk memanggil tumpukan.Ini dilakukan secara efisien dengan menetapkan buffer, ruang dalam memori yang dirancang cukup besar untuk mengatasi ruang maksimum yang dibutuhkan oleh buffer tertentu.Dalam kebanyakan kasus, beberapa ruang tidak akan digunakan, sehingga bertindak sebagai penyangga antara data dari aplikasi yang berbeda, menyisakan ruang untuk mengatasinya jika seseorang tiba -tiba membutuhkan ruang ekstra.Salah satu cara untuk memvisualisasikannya adalah dengan memikirkan perpustakaan yang mengalokasikan sejumlah ruang untuk setiap area subjek, memastikan untuk meninggalkan beberapa ruang tambahan untuk mengatasinya jika, misalnya, semua buku pada satu subjek berada di perpustakaan di Thewaktu yang sama, daripada salah satu dari mereka sedang diperiksa. Overflow buffer tumpukan terjadi ketika sebuah program menulis data tumpukan panggilan ke buffer dengan cara yang melebihi ruang yang dialokasikan.Ini bisa terjadi secara tidak sengaja, biasanya melalui bug dalam suatu program.Misalnya, jika suatu aplikasi dirancang untuk memungkinkan pengguna mengetikkan nomor telepon, tetapi tidak memiliki batasan jumlah karakter yang dapat dimasukkan, seorang peretas mungkin dapat menggunakan bidang tanpa batas untuk secara sengaja menyebabkan stack buffer overflow.Bergantung pada cara kerja sistem operasi, ini dapat memungkinkan peretas untuk secara tidak langsung mengakses aplikasi lain atau sistem operasi itu sendiri. Ada beberapa pendekatan untuk memitigasi efek dari overflow buffer stack.Satu dikenal sebagai pengacakan tata letak ruang alamat.Ini mengatur bidang data yang paling penting di komputer secara acak.Idenya adalah bahwa bahkan jika seorang peretas memang menyebabkan atau mengeksploitasi overflow buffer tumpukan, ia tidak akan dapat mengeksploitasi pelanggaran dengan cara yang dapat diandalkan.