Kerentanan buffer overflow di libssh

Kerentanan (CVE-2-2) telah diidentifikasi di perpustakaan libssh (jangan bingung dengan libssh2021), yang dirancang untuk menambahkan dukungan klien dan server untuk protokol SSHv3634 ke program C, yang menyebabkan buffer overflow saat memulai proses rekey menggunakan pertukaran kunci yang menggunakan algoritma hashing yang berbeda. Masalah ini telah diperbaiki pada rilis 0.9.6.

Inti permasalahannya adalah operasi perubahan kunci memungkinkan penggunaan hash kriptografi dengan ukuran cast yang berbeda dari algoritma awal yang digunakan. Dalam hal ini, memori untuk hash di libssh dialokasikan berdasarkan ukuran hash asli, dan penggunaan ukuran hash yang lebih besar menyebabkan data ditimpa melampaui batas buffer yang dialokasikan. Sebagai metode keamanan cadangan, Anda dapat membatasi daftar metode pertukaran kunci yang didukung hanya pada algoritma dengan ukuran hash yang sama. Misalnya, untuk mengikat ke SHA256, Anda dapat menambahkan kode: rc = ssh_options_set(s->ssh.session, SSH_OPTIONS_KEY_EXCHANGE, "diffie-hellman-group14-sha256,curve25519-sha256,ecdh-sha2-nistp256");

Sumber: opennet.ru

Tambah komentar