Đăng bởi usa vào 27 Oct 2014
Dịch bởi Thomas Tran
Chúng tôi đã thay đổi thiết lập mặc định của ext/openssl trên các phiên bản Ruby 2.1.4, 2.0.0-p594 và 1.9.3-p550. Với thay đổi này, các tuỳ chọn SSL/TLS không bảo mật bị mặc định vô hiệu hoá. Tuy nhiên, thay đổi này có khả năng gây ra một số vấn đề với kết nối SSL.
Chi tiết
OpenSSL vẫn thực thi các giao thức và mật mã được xem là không bảo mật vào ngày nay bởi các hoàn cảnh lịch sử. Giống như là lỗ hổng bảo mật POODLE (CVE-2014-3566), nếu bạn tiếp tục sử dụng OpenSSL với các tính năng không bảo mật đó, bạn có thể không thể đảm bảo sự an toàn của giao tiếp mạng. Vì vậy, dựa trên cuộc thảo luận ở Bug #9424, chúng tôi quyết định vô hiệu hoá các tuỳ chọn không bảo mật của SSL/TLS ở mặc định. Nếu bạn cần phải bỏ qua thay đổi này (xem ở dưới), hãy áp dụng bản vá ngược để thu hồi.
Tuy nhiên, nếu bạn bỏ qua thay đổi này, có nguy cơ là bạn không đảm bảo được sự an toàn của giao tiếp mạng. Bạn nên hiểu trước khi làm điều đó.
Các gói thư viện của Ruby
Thay đổi này ảnh hưởng đến net/http, net/imap và net/pop. Tuy nhiên WEBrick và Drb lại không bởi vì chúng nhận các thiết lập một cách độc lập.
Các kịch bản sử dụng ext/openssl trực tiếp
Thay đổi này ảnh hưởng khi một đối tượng OpenSSL::SSL::SSLContext
được khởi tạo và phương thức set_params
được gọi.
Cụ thể, đoạn code như sau:
Khi sử dụng ext/openssl ở phía client, chúng tôi cho rằng có thể không có vấn đề gì với thay đổi này. Tuy nhiên, nếu bạn đang sử dụng ext/openssl ở phía server và áp dụng thay đổi này, một vài client cũ (IE6, trình duyệt trên các máy điện thoại đời cũ, vv…) có thể không thể kết nối đến server.
Bạn sẽ là người quyết định có cho phép thay đổi này hay không, hãy cân nhắc lựa chọn.
Giải pháp khác
Néu bạn không thể nâng cấp Ruby nhưng bạn phải đương đầu các tuỳ chọn SSL/TSL không bảo mật, hãy áp dụng bản vá tạm sau:
Các phiên bản bị ảnh hưởng của thay đổi này
- Ruby 1.9.3 patchlevel 550 và sau đó
- Ruby 2.0.0 patchlevel 594 và sau đó
- Ruby 2.1.4 và sau đó
- Trunk: revision 48097 và sau đó
Lịch sử
- Được phát hành đầu tiên vào 2014-10-27 12:00:00 (UTC)