Lỗ hổng nghiêm trọng trong OpenSSL cho phép tin tặc giải mã HTTPS
OpenSSL Foundation vừa mới phát hành bản vá lỗi cho một lỗ hổng có mức độ nguy hiểm cao trong thư viện code mật mã cho phép tin tặc chiếm khóa giải mã kết nối HTTPS và các kết nối dùng Transport layer security (TLS).
OpenSSL là một thư viện mã nguồn mở được sử dụng rộng rãi trong các ứng dụng dành cho việc truyền tải dữ liệu bảo mật. Hầu hết các website đều sử dụng nó để kích hoạt Sockets Layer (SSL) hoặc mã hóa Transport Layer Security (TLS).
Tuy nhiên, sau lỗ hổng Heartbleed được phát hiện vào năm ngoái, OpenSSL đã được thêm nhiều nhà nghiên cứu bảo mật điều tra chuyên sâu hơn. Đội ngũ nhân viên OpenSSL đã vá hai lỗ hổng riêng biệt, có định danh lần lượt là CVE-2016-0701 và CVE-2015-3197.
Lỗ hổng CVE-2016-0701
Diffie-Hellman (DH) là phương thức cơ bản trong việc trao đổi các khóa mã hóa qua các kênh không tin cậy, cho phép các giáo thức như HTTPS, SSH, SMTPS, IPsec dùng 1 khóa bí mật để tạo một phiên kết nối riêng tư.
Tuy nhiên, các ứng dụng dựa thuật toán trao đổi khóa trên DH sinh ra các khóa tạm thời chỉ sử dụng các số nguyên tố an toàn, nhưng mặc định máy chủ lại sử dụng lại cùng các số nguyên tố này, gây ra lỗ hổng tấn cổng sử dụng lại khóa.
Tin tặc có thể khai thác lỗi hổng này bằng cách tạo nhiều phiên kết nối với máy chủ và tìm kiếm được khóa bí mật DH của máy chủ nếu máy chủ đó sử dụng lại khóa bí mật hoặc sử dụng một khóa Diffie-Hellman cố định.
Tuy nhiên, OpenSSL có tùy chọn SSL_OP_SINGLE_DH_USE để cấu hình sinh khóa Diffie-Hellman trong TLS. Nhưng mặc định tùy chọn này lại bị OFF, trong phiên bản mới của OpenSSL tùy chọn này mặc định sẽ được enable.
Lỗ hổng này chỉ ảnh hưởng tới OpenSSL v1.0.2.
Lỗ hổng CVE-2015-3197
Lỗ hổng này được xếp ở mức thấp "low severity", CVE-2015-3197 ảnh hưởng tới các phiên bản 1.0.2 và 1.0.1, lỗ hổng này cho phép tin tặc chuyển các kết nối SSLv3 sang dạng hóa yếu hơn là SSLv2, ngay cả khi kiểu mã hóa SSLv2 bị tắt trên máy chủ.
Lỗ hổng Logjam
Hai lỗ hổng kể trên trong giao thức TLS cho phép kẻ tấn công dạng man-in-the-middle có thể giảm độ dài của khóa trao đổi DH xuống còn 512-bit, để dễ dàng bẻ khóa.
Lỗ hổng này còn được gọi là Logjam (CVE-2015-4000). OpenSSL giảm thiểu nguy cơ tấn công cho TLS clients bằng cách từ chối các bắt tay với tham số DH ngắn hớn 768-bits trong phiên bản 1.0.2b và 1.0.1n.
Giới hạn này được tăng lên 1024 bit trong phiên bản mới nhất để đảm bảo an toàn tối đa cho tất cả các kết nối TLS.
Upgrade now!!!
Nếu máy chủ của bạn đang sử dụng OpenSSL phiên bản 1.0.2, vui lòng nâng cấp lên phiên bản 1.0.2f, đối với máy chủ đang dùng OpenSSL v1.0.1 nâng cấp lên v1.0.1r.
Chúng tôi khuyến cáo bạn nên áp dụng các bản vá càng sớm càng tốt. Các phiên bản OpenSSL 0.9.8 và 1.0.0 đã dừng hỗ trợ vào tháng 12. Phiên bản OpenSSL 1.0.1 sẽ dừng hỗ trợ vào cuối năm nay.
Đối với các máy chủ dùng Debian/Ubuntu, phiên bản OpenSSL trên kho phần mềm chưa có gói OpenSSL v1.0.1r. Để tiện hơn cho quá trình nâng cấp, VCCloud đã build sẵn gói cài. Đối với các máy chủ dòng Redhat/CentOS, bạn có thể upgrade từ mã nguồn, theo hướng dẫn dưới đây.
Các bước Upgrade OpenSSl cho Debian/Ubuntu:
Version trước khi upgrade:
openssl version OpenSSL 1.0.1f 6 Jan 2014
Download file và cài đặt:
wget http://mirror.vccloud.vn/patch/openssl_1.0.1r-1_amd64.deb dpkg -i openssl_1.0.1r-1_amd64.deb
Hoặc OpenSSL v1.0.2f: http://mirror.vccloud.vn/patch/openssl_1.0.2f-1_amd64.deb
Tạo lại symbol link
mkdir -p /usr/lib/ssl/ ln -s /etc/ssl/{certs,private,openssl.cnf} /usr/lib/ssl/
Kiểm tra version sau khi upgrade
openssl version OpenSSL 1.0.1r 28 Jan 2016
Hướng dẫn upgrade OpenSSL từ source
Cài các gói cần thiết để build
apt-get install -y make gcc checkinstall zlib1g-dev
Tải source từ trang chủ và giải nén
cd ~; wget https://www.openssl.org/source/openssl-1.0.1r.tar.gz tar -xvzf openssl-1.0.1r.tar.gz
Nếu dùng OpenSSL 1.0.2f: https://www.openssl.org/source/openssl-1.0.2f.tar.gz
Cấu hình và cài đặt
cd openssl-1.0.1r ./config —prefix=/usr --openssldir=/etc/ssl --libdir=lib shared zlib-dynamic make make test make install
Bài viết khác
-
Ổ cứng SSD là gì? Phân biệt khác nhau giữa ổ cứng SSD và HDD? Trường hợp nào nên sử dụng SSD?
-
7 xu hướng marketing online năm 2016
-
Kinh doanh bán lẻ: Khuyến mại “Được ăn cả ngã về không” nên thử
-
Export routines via phpmyadmin
-
Hướng dẫn cập nhật phpBB
-
Cách sửa lỗi SSL trên trình duyệt Chrome, Firefox, Cốc Cốc
-
Ý nghĩa các hàm addslashes, mysql_real_escape_string, htmlspecialchars
-
Thêm Google Drive vào Menu Send to trên Windows 7
-
Thiết kế website tư vấn du học cần những gì?
-
Một số biện pháp đối phó khi phát hiện bị DDOS, How to check DDOS Attack and prevent
-
Làm sao để có một website chuyên nghiệp?
-
Bảo mật Server Linux hiệu quả hơn
-
Hướng dẫn cấu hình Kloxo MR trước khi sử dụng
-
Hướng dẫn cài đặt Kloxo-MR trên CentOS 6.4
-
5 công cụ SEO miễn phí có thể bạn chưa biết
-
Hướng dẫn tạo Email với tên miền riêng Mail Yandex
-
Lịch sử cập nhật
Giới thiệu
- Điều khoản sử dụng
- Chính sách & Quy định chung
- Quy định và hình thức thanh toán
- Chính sách bảo mật thông tin
- Hướng dẫn xóa dữ liệu người dùng thông qua Facebook
Blog
- Lịch sử cập nhật
- Thông Báo Bảo Trì AAG Kênh Giữa HongKong Và Malaysia
- Google cho biết bản cập nhật thứ sáu là không phải do các thuật toán Penguin
- Là một bản cập nhật lớn từ Google tìm kiếm đang xảy ra? Tôi nghĩ như vậy.
- 4 cách viết bài cho SEO, tăng khả năng thành công
Thiết kế website
Youtube Partner And Network
- "Hôi của" Hình ảnh này mình "hôi của đề xuất" của Afrojack
- Cách tag video của mình sao cho được đánh giá cao trong YouTube và VIDIQ
- Tiện ích VidIQ – cần phải có khi chơi youtube