Pertama , sebelum ketakutan, pastikan Anda memahami apakah kerentanan ini benar-benar berlaku untuk Anda. Jika Anda memiliki server, tetapi belum pernah benar-benar memiliki aplikasi yang menggunakan TLS, maka ini bukan hal prioritas tinggi untuk Anda perbaiki. Jika, di sisi lain, Anda pernah memiliki aplikasi yang mendukung TLS, maka Anda bisa mendapatkannya. Baca terus:
Apa sebenarnya itu CVE-2014-0160 alias "Heartbleed"?
Ini kekacauan besar, itulah masalahnya. Singkatnya, kerentanan yang dapat dieksploitasi dari jarak jauh ditemukan di OpenSSL versi 1.0.1 hingga 1.0.1f di mana penyerang dapat membaca bagian tertentu dari memori sistem. Bagian-bagian itu adalah yang menyimpan data sensitif seperti kunci privat, kunci preshared, kata sandi, dan data perusahaan bernilai tinggi.
Bug ini ditemukan secara independen oleh Neel Mehta dari Google Security (21 Maret 2014) dan perusahaan pengujian keamanan Finlandia Finlandia Codenomicon (2 April 2014).
Apa penyebabnya?
Nah, kode sesat di OpenSSL. Berikut adalah komit yang memperkenalkan kerentanan, dan di sini adalah komit yang memperbaiki kerentanan. Bug muncul pada bulan Desember 2011 dan ditambal hari ini, 7 April 2014.
Bug ini juga dapat dilihat sebagai gejala dari masalah yang lebih besar. Dua masalah terkait adalah (1) proses apa yang ada untuk memastikan kode yang salah tidak diperkenalkan ke basis kode, dan (2) mengapa protokol dan ekstensi sangat rumit dan sulit untuk diuji. Butir (1) adalah masalah tata kelola dan proses dengan OpenSSL dan banyak proyek lainnya. Banyak pengembang menolak praktik seperti ulasan kode, analisis, dan pemindaian. Butir (2) sedang dibahas pada TLS WG IETF. Lihat Kompleksitas Heartbleed / protokol .
Apakah kode yang salah dimasukkan dengan jahat?
Saya tidak akan berspekulasi tentang apakah ini benar-benar kesalahan atau mungkin sedikit kode masuk atas nama aktor yang buruk. Namun, orang yang mengembangkan kode untuk OpenSSL menyatakan itu tidak sengaja. Melihat Pria yang memperkenalkan cacat keamanan 'Heartbleed' yang serius menyangkal dia memasukkannya dengan sengaja .
OS dan versi OpenSSL apa yang rentan?
Seperti disebutkan di atas, sistem operasi apa pun yang menggunakan, atau aplikasi yang ditautkan dengan OpenSSL 1.0.1 hingga 1.0.1f.
Apa gejalanya, adakah metode untuk mendeteksi eksploitasi yang berhasil?
Ini bagian yang menakutkan. Sejauh yang kami tahu, tidak ada cara yang diketahui untuk mendeteksi apakah kerentanan ini telah dieksploitasi. Secara teori dimungkinkan bahwa tanda tangan IDS akan segera dirilis yang dapat mendeteksi eksploitasi ini, tetapi pada saat penulisan ini, mereka tidak tersedia.
Ada bukti bahwa Heartbleed sedang dieksploitasi secara aktif di alam liar pada awal November 2013. Lihat Liar di Hati EFF : Apakah Lembaga Intelijen Menggunakan Heartbleed pada November 2013? Dan Bloomberg melaporkan NSA telah mempersenjatai eksploitinya tidak lama setelah kerentanan diperkenalkan. Lihat NSA Dikatakan Mengeksploitasi Bug Heartbleed untuk Intelijen selama bertahun-tahun . Namun, Komunitas Intelijen AS membantah klaim Bloomberg. Lihat IC TENTANG REKAM .
Bagaimana saya dapat memeriksa untuk melihat apakah sistem saya terpengaruh?
Jika Anda mempertahankan OpenSSL di sistem Anda, maka Anda bisa mengeluarkan openssl version
:
$ openssl version
OpenSSL 1.0.1g 7 Apr 2014
Jika distribusi adalah mempertahankan OpenSSL, maka Anda mungkin tidak dapat menentukan versi OpenSSL karena kembali menambal menggunakan openssl
perintah atau informasi paket (misalnya, apt-get
, dpkg
, yum
atau rpm
). Proses tambalan kembali yang digunakan oleh sebagian besar (semua?) Distribusi hanya menggunakan nomor versi dasar (misalnya, "1.0.1e"); dan tidak termasuk versi keamanan yang efektif (misalnya, "1.0.1g").
Ada pertanyaan terbuka tentang Pengguna Super untuk menentukan versi keamanan yang efektif untuk OpenSSL dan paket lainnya ketika paket di-backpatch. Sayangnya, tidak ada jawaban yang berguna (selain memeriksa situs web distro). Lihat Menentukan Versi Keamanan yang Efektif ketika dihadapkan dengan Backpatching ?
Sebagai aturan praktis: jika Anda pernah menginstal salah satu versi yang terpengaruh, dan pernah menjalankan program atau layanan yang terhubung dengan OpenSSL untuk dukungan TLS, maka Anda rentan.
Di mana saya dapat menemukan program untuk menguji kerentanan?
Dalam beberapa jam setelah pengumuman Heartbleed, beberapa orang di internet telah mempublikasikan aplikasi web yang dapat diakses publik yang konon dapat digunakan untuk memeriksa server apakah ada kerentanan ini. Sampai tulisan ini dibuat, saya belum mengulasnya, jadi saya tidak akan mempublikasikan aplikasi mereka lebih lanjut. Mereka dapat ditemukan relatif mudah dengan bantuan mesin pencari pilihan Anda.
Bagaimana kerentanan ini dimitigasi?
Tingkatkan versi ke versi yang tidak rentan dan atur ulang atau amankan kembali data yang rentan. Sebagaimana dicatat di situs Heartbleed , langkah-langkah respons yang sesuai secara luas:
- Menambal sistem yang rentan.
- Regenerasi kunci pribadi baru.
- Kirim CSR baru ke CA Anda.
- Dapatkan dan instal sertifikat yang ditandatangani baru.
- Kunci sesi dan cookie tidak valid
- Setel ulang kata sandi dan rahasia bersama
- Cabut sertifikat lama.
Untuk analisis dan jawaban yang lebih terperinci, lihat Apa yang harus dilakukan oleh operator situs web tentang eksploitasi Heartbleed OpenSSL? di Bursa Stack Security.
Haruskah saya khawatir bahwa kunci saya atau data pribadi lainnya telah disusupi? Efek samping apa lagi yang harus saya perhatikan?
Benar. Administrator Sistem perlu berasumsi bahwa server mereka yang menggunakan versi OpenSSL yang rentan memang dikompromikan dan meresponsnya.
Tak lama setelah kerentanan diungkapkan, Cloudfare menawarkan tantangan untuk melihat apakah kunci pribadi server dapat dipulihkan dalam praktiknya. Tantangan itu dimenangkan secara independen oleh Fedor Indutny dan Ilkka Mattila. Lihat Tantangan Heartbleed .
Di mana saya dapat menemukan informasi lebih lanjut?
Tumpukan tautan, bagi mereka yang mencari detail lebih lanjut:
Garis waktu kejadian pengungkapan yang agak terperinci dapat ditemukan di garis waktu pengungkapan Heartbleed: siapa yang tahu apa dan kapan .
Jika Anda seorang programmer dan tertarik pada berbagai trik pemrograman seperti mendeteksi serangan Heartbleed melalui msg_cb
callback OpenSSL , maka lihat OpenSSL's Security Advisory 2014047 .