Library Libgcrypt adalah perangkat kriptografi open source yang ditawarkan sebagai bagian dari rangkaian perangkat lunak GnuPG untuk mengenkripsi dan menandatangani data dan komunikasi. Implementasi OpenPGP, ini digunakan untuk keamanan digital di banyak distribusi Linux seperti Fedora dan Gentoo, meskipun tidak digunakan secara luas seperti OpenSSL atau LibreSSL.
Kerentanan yang "parah" dalam perangkat lunak enkripsi Libgcrypt GNU Privacy Guard (GnuPG) bisa memungkinkan penyerang untuk menulis data dengan bebas ke mesin target, yang berpotensi mengarah ke eksekusi kode jarak jauh.
Manurut salah satu postingan Ravie Lakshmanan di situs TheHackerNews, Cacat yang mempengaruhi libgcrypt versi 1.9.0, ditemukan pada 28 Januari oleh Tavis Ormandy dari Project Zero, unit penelitian keamanan di Google yang didedikasikan untuk menemukan bug zero-day dalam sistem perangkat keras dan perangkat lunak.
Sementara untuk versi Libgcrypt yang lain tidak terpengaruh oleh kerentanan ini.
"Ada buffer overflow heap di libgcrypt karena asumsi yang salah dalam kode manajemen buffer blok," kata Ormandy." mendekripsikan beberapa data bisa meluap buffer heap dengan data yang dikendalikan penyerang, tidak ada verifikasi atau tanda tangan yang divalidasi sebelum kerentanan terjadi."
GnuPG mengatasi kelemahan tersebut segera dalam waktu sehari setelah diungkapkan, sembari mendesak pengguna untuk berhenti menggunakan versi yang rentan tersebut.
Menurut GnuPG, bug tersebut tampaknya telah diperkenalkan di 1.9.0 selama fase pengembangannya dua tahun lalu sebagai bagian dari perubahan untuk "mengurangi overhead pada fungsi generic hash write", tetapi bug tersebut baru terlihat minggu lalu oleh Google Project Zero.
Dengan demikian, semua yang perlu dilakukan penyerang untuk memicu cacat kritis ini adalah mengirim pustaka blok data yang dibuat khusus untuk didekripsi, sehingga menipu aplikasi agar menjalankan fragmen secara bebas dari kode berbahaya yang tertanam di dalamnya (alias shellcode) atau merusak program. (dalam hal ini, gpg) yang bergantung pada pustaka Libgcrypt.
"Memanfaatkan bug ini bisa dengan mudah dan dengan demikian diperlukan tindakan segera untuk versi 1.9.0," penulis Libgcrypt Werner Koch mencatat. " Tarball 1.9.0 di server FTP kami telah diganti namanya sehingga skrip tidak akan bisa mendapatkan versi ini lagi."