VeraCrypt memperbaiki bug yang ditemukan dalam audit keamanan

Peneliti keamanan telah menyelesaikan audit platform enkripsi VeraCrypt yang didukung Open Source Technology Improvement Fund yang didukung dan menemukan delapan kerentanan kritis, tiga sedang, dan 15 tingkat keparahan rendah. Tim di balik alat populer membahas temuan audit di VeraCrypt 1.19. Beginilah seharusnya audit keamanan bekerja.

OSTIF mengatakan VeraCrypt 1.9 aman karena sebagian besar kekurangan telah diatasi. Beberapa kerentanan tidak diatasi dalam versi ini, karena "kompleksitas tinggi untuk perbaikan yang diusulkan," tetapi ada solusi untuk itu.

"Selama Anda mengikuti dokumentasi untuk masalah yang diketahui dan menggunakannya seperti yang disarankan, saya yakin [VeraCrypt 1.9] adalah salah satu sistem FDE [enkripsi disk penuh] terbaik di luar sana," kata Derek Zimmer, CEO dan presiden OSTIF, dalam Tanya Jawab Tanya-Saya-Apa Pun di Reddit. Zimmer juga bermitra dengan penyedia layanan jaringan pribadi virtual VikingVPN.

OSTIF mempekerjakan peneliti keamanan senior Quarkslab Jean-Baptiste Bédrune dan kriptografer senior Marion Videau untuk memeriksa basis kode VeraCrypt, dengan fokus pada versi 1.18, dan DCS EFI Bootloader. Audit tersebut berfokus pada fitur keamanan baru yang diperkenalkan ke VeraCrypt setelah audit keamanan TrueCrypt bulan April 2015. VeraCrypt adalah cabang dari alat enkripsi yang sekarang ditinggalkan, dan kompatibel ke belakang.

Empat masalah dalam bootloader - penekanan tombol tidak terhapus setelah otentikasi, data sensitif tidak terhapus dengan benar, kerusakan memori, dan referensi pointer null / buruk - ditemukan dalam audit dan diperbaiki dalam versi 1.19. 

Cacat sandi booting dengan tingkat keparahan rendah, yang dapat menentukan panjang sandi, juga telah diatasi. Meskipun kebocoran informasi itu sendiri tidak kritis, karena sistem perlu di-boot dan akses istimewa diperlukan untuk membaca memori BIOS, kerentanan perlu diperbaiki karena penyerang yang mengetahui panjang kata sandi akan mempercepat waktu yang dibutuhkan untuk brute-force. serangan, kata audit itu.

VeraCrypt mengandalkan fungsi kompresi untuk mendekompresi bootloader saat hard drive dienkripsi, untuk membuat dan memeriksa disk pemulihan jika sistem dienkripsi dan menggunakan UEFI, dan selama penginstalan. Audit menemukan bahwa semua fungsi kompresi memiliki masalah.

VeraCrypt menggunakan XZip dan XUnzip, yang diketahui memiliki kerentanan dan sudah ketinggalan zaman. "Kami sangat menyarankan untuk menulis ulang pustaka ini dan menggunakan versi zlib terbaru, atau lebih disukai, menggunakan komponen lain untuk menangani file Zip," kata auditor. VeraCrypt 1.19 menggantikan pustaka yang rentan dengan libzip, pustaka zip modern dan lebih aman.

UEFI adalah salah satu fitur terpenting - dan terbaru - yang ditambahkan ke VeraCrypt, sehingga auditor memberikan perhatian ekstra pada bagian kode ini. Semua kode khusus untuk UEFI ada di repositori VeraCrypt-DCS, dan "dianggap jauh lebih tidak matang dibandingkan proyek lainnya" oleh pengembang utama VeraCrypt, tulis para peneliti dalam laporan audit. "Beberapa bagian tidak lengkap, atau tidak tidak lengkap sama sekali."

Dalam ringkasan audit, OSTIF menulis bahwa "VeraCrypt jauh lebih aman setelah audit ini, dan perbaikan yang diterapkan pada perangkat lunak berarti dunia lebih aman saat menggunakan perangkat lunak ini."  

Sebagai hasil dari audit tersebut, VeraCrypt membuang cipher blok simetris GOST 28147-89, yang awalnya ditambahkan di VeraCrypt 1.17, karena kesalahan dalam penerapannya. Enkripsi GOST 28147-89 adalah alternatif DES yang dikembangkan Soviet yang dirancang untuk memperkuat algoritme. Semua pustaka kompresi dianggap ketinggalan zaman atau ditulis dengan buruk, menurut audit. Implementasinya "gagal," kata Zimmer di Reddit AMA.

Di versi 1.9, pengguna dapat mendekripsi volume yang ada yang menggunakan cipher tetapi tidak dapat membuat instance baru.

Pengguna yang menggunakan penyandian GOST yang telah dihapus sebagai bagian dari audit harus mengenkripsi ulang partisi lama menggunakan versi terbaru. Pengguna juga harus mengenkripsi ulang pada semua sistem enkripsi disk penuh karena sejumlah masalah dengan bootloader telah diperbaiki. Siapapun yang menggunakan versi sebelum 1.18 harus mengenkripsi ulang partisi karena bug terkait dengan penemuan partisi tersembunyi.

VeraCrypt adalah cabang dari TrueCrypt, yang tiba-tiba ditutup oleh pengembang pada Mei 2014, mengisyaratkan masalah keamanan yang tidak ditentukan. Ada kekhawatiran bahwa platform memiliki pintu belakang atau cacat lain yang membahayakan alat tersebut. Audit diperlukan untuk menilai keamanan platform secara keseluruhan.

OSTIF mengatakan TrueCrypt 7.1a seharusnya tidak lagi dianggap aman karena tidak lagi dalam pemeliharaan aktif dan dipengaruhi oleh masalah bootloader yang ditemukan dalam audit. Namun, laporan audit juga menyarankan bahwa kelemahan di TrueCrypt 7.1a tidak mempengaruhi keamanan kontainer dan drive non-sistem.

Sangat mudah untuk menolak VeraCrypt sebagai tidak aman karena masalah yang terungkap, tetapi itu mengabaikan keseluruhan nilai dari audit. Jika audit telah menemukan masalah dan tim telah menolak untuk memperbaiki masalah, atau tidak menanggapi permintaan dari auditor, maka hal itu akan menimbulkan kekhawatiran. Dalam kasus ini, Quarkslab menyelesaikan audit dalam satu bulan, dan pengelola memperbaiki sejumlah besar masalah dan mendokumentasikan secara rinci bagaimana menangani masalah lain yang belum ditangani. Ya, auditor menemukan beberapa keputusan dan kesalahan yang dipertanyakan yang seharusnya tidak dilakukan sejak awal, tetapi tidak ada pintu belakang yang bermasalah atau kerentanan apa pun yang membahayakan integritas alat enkripsi disk penuh.

Sifat pengembangan open source berarti kode sumber tersedia bagi siapa saja untuk diperiksa. Namun, seperti yang telah ditunjukkan berulang kali selama beberapa tahun terakhir, sangat sedikit pengembang yang secara aktif mencari kelemahan keamanan. Inilah sebabnya, terlepas dari pendekatan "banyak bola mata", Heartbleed dan Shellshock serta kerentanan kritis lainnya tetap ada di OpenSSL selama bertahun-tahun sebelum ditemukan.

Dengan audit, para profesional memeriksa setiap baris kode sumber perangkat lunak open source untuk memverifikasi integritas kode, mengungkap kelemahan keamanan dan pintu belakang, dan bekerja dengan proyek untuk memperbaiki masalah sebanyak mungkin. Audit tersebut biasanya mahal - mesin pencari pribadi DuckDuckGo dan layanan jaringan pribadi virtual Viking VPN adalah donor utama OSTIF untuk audit ini - itulah sebabnya mengapa audit tidak lebih umum. Namun, karena banyak produk komersial dan proyek sumber terbuka lainnya sangat bergantung pada beberapa proyek sumber terbuka, audit menjadi semakin penting.

Dengan selesainya audit VeraCrypt, OSTIF menunggu audit OpenVPN 2.4. GnuPG, Off-the-Record, dan OpenSSL juga ada di peta jalan. Core Infrastructure Initiative dari Linux Foundation telah menyatakan rencana untuk audit publik OpenSSL dengan NCC Group, tetapi status proyek tersebut saat ini tidak jelas.

"Saya berharap kami dapat mencapai setiap proyek yang disukai semua orang, dan daftar saya akan sangat banyak, tetapi kami memiliki sumber daya yang terbatas untuk dikerjakan dan mengamankan pendanaan adalah sebagian besar pekerjaan kami saat ini," tulis Zimmer, mencatat bahwa OSTIF berfokus pada satu proyek "menjanjikan" di setiap bidang kriptografi.