Peneliti Keamanan Cisco
Kerentanan dapat dieksploitasi untuk mengeksekusi kode dalam situasi di mana penyerang dapat mengatur pembentukan nilai negatif dari variabel yang digunakan untuk mengirimkan ukuran data yang disalin (misalnya, akan menjadi negatif ketika mentransfer lebih dari 2 GB data data, tetapi selama serangan, untuk melampaui batas buffer, Anda perlu mentransfer setidaknya 4GB). Fungsi memcpy() banyak digunakan dalam aplikasi, dan prosesor ARMv7 umum digunakan pada sistem otomotif, seluler, industri, konsumen, komunikasi, dan perangkat tertanam, yang berpotensi terkena serangan menggunakan Bluetooth, Radio HD/DAB, USB, CAN bus, Wi-Fi Fi dan sumber data eksternal lainnya (misalnya, layanan dan aplikasi yang dapat diakses melalui jaringan yang menerima data masukan tanpa batasan ukuran dapat diserang).
Contohnya adalah pembuatan eksploitasi yang berfungsi untuk menyerang server HTTP yang dibangun dalam sistem informasi mobil, yang dapat diakses melalui jaringan Wi-Fi mobil. Penyerang luar dapat mengeksploitasi kerentanan memcpy di server ini dengan mengirimkan permintaan GET yang sangat besar dan mendapatkan akses root ke sistem.
Pada sistem x32 86-bit, masalah tidak muncul karena implementasi memcpy untuk arsitektur ini dengan benar menafsirkan variabel ukuran sebagai nilai integer tak bertanda tipe size_t (dalam bahasa rakitan
Perbaikannya adalah dengan mengganti penggunaan instruksi perakitan yang beroperasi pada operan yang ditandatangani (bge dan blt) dengan rekanan yang tidak ditandatangani (blo dan bhs).
Masalahnya belum terselesaikan
Sumber: opennet.ru