Tôi đã xem xét một cách đáng tin cậy và di động để kiểm tra phiên bản OpenSSL trên GNU / Linux và các hệ thống khác, vì vậy người dùng có thể dễ dàng khám phá liệu họ có nên nâng cấp SSL vì lỗi Heartbleed hay không.
Tôi nghĩ rằng nó sẽ dễ dàng, nhưng tôi đã nhanh chóng gặp sự cố trên Ubuntu 12.04 LTS với OpenSSL 1.0.1g mới nhất:
phiên bản openssl -a
Tôi đã mong đợi để xem một phiên bản đầy đủ, nhưng thay vào đó tôi đã nhận được điều này:
OpenSSL 1.0.1 14 tháng 3 năm 2012 được xây dựng trên: Thứ ba ngày 4 tháng 6 07:26:06 UTC 2013 nền tảng: [...]
Trước sự ngạc nhiên khó chịu của tôi, thư phiên bản không hiển thị. Không có f, không có g ở đó, chỉ "1.0.1" và đó là nó. Ngày được liệt kê cũng không hỗ trợ trong việc khám phá phiên bản (không) dễ bị tổn thương.
Sự khác biệt giữa 1.0.1 (af) và 1.0.1g là rất quan trọng.
Câu hỏi:
- Một cách đáng tin cậy để kiểm tra phiên bản, tốt nhất là phân phối chéo là gì?
- Tại sao chữ cái phiên bản hiển thị ở vị trí đầu tiên? Tôi không thể kiểm tra điều này trên bất cứ thứ gì khác ngoài Ubuntu 12.04 LTS.
Những người khác đang báo cáo hành vi này là tốt. Một vài ví dụ:
- https://twitter.com/orblivion/status/453323034955223040
- https://twitter.com/axiomsofchoice/status/453309436816535554
Một số gợi ý (cụ thể) được đưa vào:
- Ubuntu và Debian:
apt-cache policy openssl
vàapt-cache policy libssl1.0.0
. So sánh số phiên bản với các gói ở đây: http://www.ubfox.com/usn/usn-2165-1/ - Fedora 20:
yum info openssl
(cảm ơn @znmeb trên twitter) vàyum info openssl-libs
Kiểm tra xem phiên bản cũ hơn của OpenSSL có còn tồn tại không:
- Nó không hoàn toàn đáng tin cậy, nhưng bạn có thể thử
lsof -n | grep ssl | grep DEL
. Xem Heartbleed: làm thế nào để kiểm tra phiên bản OpenSSL một cách đáng tin cậy và hợp lý? tại sao điều này có thể không làm việc cho bạn.
Hóa ra việc cập nhật gói OpenSSL trên Ubuntu và Debian không phải lúc nào cũng đủ. Bạn cũng nên cập nhật gói libssl1.0.0 và kiểm tra xem có openssl version -a
cho biết không built on: Mon Apr 7 20:33:29 UTC 2014
.
[root@null~]# openssl version -a OpenSSL 1.0.1e-fips 11 Feb 2013
apt-cache policy openssl
và nó đã trả lời: Installed: 1.0.1-4ubuntu5.12
đó là 1.0.1g vừa được Ubuntu phát hành cho 12.04 LTS. Tôi đã đăng xuất và đăng nhập lại. Tôi có thể làm gì khác để xác minh không?