Integer overflow adalah hasil atau akibat dari menempatkan sebuah integer (bilangan bulat) ke dalam memori komputer yang terlalu besar untuk tipe data integer dalam sistem yang diberikan. Misalnya, jika tipe data integer memungkinkan bilangan bulat hingga dua byte atau 16 bit (atau angka yang tidak ditandatangani hingga desimal 65.535), dan dua bilangan bulat harus ditambahkan bersama-sama yang akan melebihi nilai 65.535, hasilnya akan menjadi integer overflow.

Menurut ISO C99, standar bahasa pemrograman C, nilai aktual yang dihasilkan dari instance integer overflow harus dianggap tidak dapat diprediksi. (Dalam praktiknya, integer overflow biasanya menghasilkan nilai “wrap-around” di mana penambahan 1 ke nilai maksimum menghasilkan nilai 0.)

Integer overflow dapat menghasilkan, misalnya dalam permintaan untuk memori yang dialokasikan secara dinamis yang terlalu besar atau terlalu kecil daripada yang dibutuhkan oleh program. Integer overflow sering dilewati tanpa terdeteksi oleh aplikasi yang terpengaruh. Karena itu, kondisi ini dapat menyebabkan pelanggaran keamanan melalui buffer overflow atau kode berbahaya lainnya.

Tagged: I