Tại sao Apple sử dụng phiên bản dễ bị tổn thương của OpenSSL?
Không phải vậy.
Nếu bạn nhấp vào liên kết bạn đã đăng trong câu hỏi của mình, bạn sẽ thấy bản cập nhật này vá một số lỗ hổng tồn tại giống hệt trong OpenSSL 0.9.8, 1.0.0, 1.0.1 và 1.0.2.
Vì vậy, nói cách khác, phiên bản mà bạn đề xuất sau này là phiên bản thay thế, 1.0.2, cũng dễ bị tổn thương như 0.9.8 và cả hai đều được sửa cùng một lúc.
Với bản cập nhật OS X mới nhất ( 10.10.5 ), Apple đang giới thiệu OpenSSL 0.9.8 . Tôi đã duyệt qua trang OpenSSL chính thức và ở đó tôi có thể có Phiên bản 1.0.2 .
Apple đang cập nhật OpenSSL lên 0.9.8zg, mới 2 tháng tuổi và chỉ hơn 4 tuần so với 1.0.2d.
Câu hỏi của tôi là: Tại sao Apple sử dụng Phiên bản OpenSSL cũ hơn? Có phải vì các chức năng không dùng nữa trong Phiên bản 1.0 hoặc lý do đằng sau nó là gì?
Đó là điều bạn sẽ phải hỏi Apple. Tôi đoán tốt nhất là 0.9.8 là phiên bản mà họ đã thử nghiệm khả năng tương thích và việc nâng cấp lên phiên bản mới hơn sẽ yêu cầu một vòng thử nghiệm hoàn toàn mới cho một thành phần không được chấp nhận. Vì phần mềm này không được dùng nữa, phần mềm mới hơn (có thể dựa vào các tính năng mới hơn) không nên sử dụng phần mềm này và phần mềm cũ hơn vẫn sử dụng phần mềm mới này (vì chúng không tồn tại) và thậm chí có thể bị hỏng bởi một bản cập nhật, vậy tại sao phải bận tâm?
Miễn là cộng đồng OpenSSL vẫn duy trì chi nhánh 0.9.8, Apple thậm chí không phải thực hiện công việc vá lỗi.
Lưu ý rằng điều này không có gì bất thường. Apple đã phát hành một phiên bản cũ của Ruby trong một thời gian rất dài và họ thường không cập nhật trong một chu kỳ phát hành, chỉ ở giữa các phiên bản. Các bản phân phối Linux cũng như các BSD và các bản phân phối Unix khác thường không cập nhật các phiên bản trong khi phát hành, chúng chỉ áp dụng các lỗi và sửa lỗi bảo mật. Đặc biệt, Debian nói chung thậm chí không sửa tất cả các lỗi, chỉ có các lỗ hổng bảo mật và lỗi có thể dẫn đến mất dữ liệu người dùng - bất kỳ thay đổi nào, ngay cả một lỗi cũng là khả năng không tương thích và tiềm năng cho các lỗi mới; biết lỗi là tốt hơn so với những người chưa biết!