Bug ini dikenal sebagai Heartbleed .
Apakah saya rentan?
Secara umum, Anda terpengaruh jika Anda menjalankan beberapa server yang Anda buat kunci SSL untuk beberapa titik. Sebagian besar pengguna akhir tidak (langsung) terpengaruh; setidaknya Firefox dan Chrome tidak menggunakan OpenSSL. SSH tidak terpengaruh. Distribusi paket Ubuntu tidak terpengaruh (bergantung pada tanda tangan GPG).
Anda rentan jika Anda menjalankan segala jenis server yang menggunakan versi OpenSSL 1.0-1.0.1f (kecuali tentu saja versi yang ditambal sejak bug ditemukan). Versi Ubuntu yang terpengaruh adalah 11.10 oneiric hingga 14.04 pra-rilis tepercaya. Ini adalah bug implementasi, bukan cacat dalam protokol, jadi hanya program yang menggunakan pustaka OpenSSL yang terpengaruh. Jika Anda memiliki program yang ditautkan dengan OpenSSL versi 0.9.x yang lama, itu tidak terpengaruh. Hanya program yang menggunakan pustaka OpenSSL untuk mengimplementasikan protokol SSL yang terpengaruh; program yang menggunakan OpenSSL untuk hal-hal lain tidak terpengaruh.
Jika Anda menjalankan server rentan yang terpapar ke Internet, anggap itu dikompromikan kecuali log Anda tidak menunjukkan koneksi sejak pengumuman pada 2014-04-07. (Ini mengasumsikan bahwa kerentanan tidak dieksploitasi sebelum diumumkan.) Jika server Anda hanya diekspos secara internal, apakah Anda perlu mengubah kunci akan tergantung pada apa langkah-langkah keamanan lain yang ada.
Apa dampaknya?
Bug ini memungkinkan setiap klien yang dapat terhubung ke server SSL Anda untuk mengambil sekitar 64kB memori dari server. Klien tidak perlu diautentikasi dengan cara apa pun. Dengan mengulangi serangan, klien dapat membuang berbagai bagian memori dalam upaya berturut-turut.
Salah satu bagian penting dari data yang dapat diambil oleh penyerang adalah kunci privat SSL server. Dengan data ini, penyerang dapat menyamar sebagai server Anda.
Bagaimana cara memulihkan di server?
Jadikan semua server yang terpengaruh offline. Selama mereka berjalan, mereka berpotensi membocorkan data penting.
Tingkatkan libssl1.0.0
paket , dan pastikan semua server yang terpengaruh dihidupkan ulang.
Anda dapat memeriksa apakah proses yang terpengaruh masih berjalan dengan `` grep 'libssl. (dihapus) '/ proc / / maps`
Buat kunci baru . Ini diperlukan karena bug tersebut memungkinkan penyerang memperoleh kunci privat yang lama. Ikuti prosedur yang sama yang Anda gunakan pada awalnya.
- Jika Anda menggunakan sertifikat yang ditandatangani oleh otoritas sertifikasi, kirimkan kunci publik baru Anda ke CA. Ketika Anda mendapatkan sertifikat baru, instal di server Anda.
- Jika Anda menggunakan sertifikat yang ditandatangani sendiri, pasang di server Anda.
- Bagaimanapun, pindahkan kunci dan sertifikat lama dari jalan (tapi jangan menghapusnya, hanya memastikan mereka tidak digunakan lagi).
Sekarang Anda memiliki kunci baru tanpa kompromi, Anda dapat membawa server Anda kembali online .
Cabut sertifikat lama.
Penilaian kerusakan : semua data yang ada dalam memori suatu proses yang melayani koneksi SSL mungkin berpotensi bocor. Ini dapat mencakup kata sandi pengguna dan data rahasia lainnya. Anda perlu mengevaluasi apa data ini mungkin.
- Jika Anda menjalankan layanan yang memungkinkan otentikasi kata sandi, maka kata sandi pengguna yang terhubung sejak sedikit sebelum kerentanan diumumkan harus dianggap dikompromikan. (Beberapa saat sebelumnya, karena kata sandi mungkin tetap tidak digunakan dalam memori untuk sementara waktu.) Periksa log Anda dan ubah kata sandi setiap pengguna yang terpengaruh.
- Juga membatalkan semua cookie sesi, karena mungkin telah dikompromikan.
- Sertifikat klien tidak dikompromikan.
- Data apa pun yang dipertukarkan sejak sedikit sebelum kerentanan mungkin tetap ada dalam memori server dan karenanya mungkin telah bocor ke penyerang.
- Jika seseorang telah mencatat koneksi SSL lama dan mengambil kunci server Anda, mereka sekarang dapat mendekripsi transkrip mereka. (Kecuali jika PFS dipastikan - jika Anda tidak tahu, itu bukan.)
Bagaimana cara memulihkan klien?
Hanya ada beberapa situasi di mana aplikasi klien terpengaruh. Masalah di sisi server adalah siapa pun dapat terhubung ke server dan mengeksploitasi bug. Untuk mengeksploitasi klien, tiga syarat harus dipenuhi:
- Program klien menggunakan versi kereta pustaka OpenSSL untuk mengimplementasikan protokol SSL.
- Klien terhubung ke server jahat. (Jadi misalnya, jika Anda terhubung ke penyedia email, ini bukan masalah.) Ini harus terjadi setelah pemilik server menyadari kerentanan, jadi mungkin setelah 2014-04-07.
- Proses klien memiliki data rahasia dalam memori yang tidak dibagikan dengan server. (Jadi jika Anda hanya berlari
wget
untuk mengunduh file, tidak ada data yang bocor.)
Jika Anda melakukannya antara 2014-04-07 malam UTC dan memutakhirkan pustaka OpenSSL Anda, pertimbangkan data apa pun yang ada di memori proses klien untuk dikompromikan.
Referensi