Mengapa Apple menggunakan versi OpenSSL yang rentan?
Bukan itu.
Jika Anda mengklik tautan yang Anda posting dalam pertanyaan Anda, Anda akan melihat bahwa pembaruan ini menambal sejumlah kerentanan yang ada secara identik di OpenSSL 0.9.8, 1.0.0, 1.0.1, dan 1.0.2.
Jadi, dengan kata lain, versi yang nantinya Anda sarankan sebagai alternatif, 1.0.2, sama rentannya dengan 0.9.8, dan keduanya diperbaiki pada saat yang sama.
Dengan Pembaruan OS X terbaru ( 10.10.5 ), Apple memperkenalkan OpenSSL 0.9.8 . Saya melihat-lihat halaman OpenSSL resmi , dan di sana saya bisa mendapatkan Versi 1.0.2 .
Apple memperbarui OpenSSL ke 0.9.8zg, yang baru berusia 2 bulan, dan hanya 4 minggu lebih tua dari 1.0.2d.
Pertanyaan saya adalah: Mengapa Apple menggunakan Versi OpenSSL yang lebih lama? Apakah karena fungsi yang sudah tidak digunakan lagi di Versi 1.0 atau apa alasannya?
Itu adalah sesuatu yang harus Anda tanyakan kepada Apple. Dugaan terbaik saya adalah 0.9.8 adalah versi yang mereka lakukan pengujian kompatibilitasnya, dan peningkatan ke versi yang lebih baru akan memerlukan putaran pengujian yang sama sekali baru untuk komponen yang sudah usang. Karena sudah usang, perangkat lunak yang lebih baru (yang mungkin akan bergantung pada fitur yang lebih baru) toh tidak boleh menggunakannya, dan perangkat lunak yang lebih lama yang masih menggunakannya tidak menggunakan fitur-fitur baru (karena tidak ada) dan bahkan mungkin rusak oleh pembaruan, jadi mengapa repot-repot?
Selama komunitas OpenSSL masih mempertahankan cabang 0.9.8, Apple bahkan tidak perlu melakukan pekerjaan backporting patch.
Perhatikan bahwa ini bukan hal yang aneh. Apple mengirimkan versi lama Ruby untuk waktu yang sangat lama, dan mereka umumnya tidak memperbarui selama siklus rilis, hanya di antara rilis. Distribusi Linux juga BSD dan distribusi Unix lainnya juga biasanya tidak memperbarui versi selama rilis, mereka hanya menerapkan perbaikan bug dan perbaikan keamanan. Debian, khususnya, umumnya bahkan tidak memperbaiki semua bug, hanya kerentanan keamanan dan bug yang dapat mengakibatkan hilangnya data pengguna - perubahan apa pun, bahkan perbaikan bug adalah potensi ketidakcocokan dan potensi bug baru; bug yang dikenal lebih baik daripada bug yang tidak dikenal!