Chuyển đến nội dung chính

Heartbleed

"Là lỗi cho phép đọc hầu như toàn bộ thông tin trên bộ nhớ của những máy chủ dùng phần mềm nguồn mở OpenSSL (Open Secure Socket Layer), như máy chủ của Google, Facebook, Yahoo,... cùng hàng triệu máy chủ khác (khoảng trên 60% số máy chủ của Internet)."


- Ngày 7/4/2014, trang mạng Heartbleed.com cảnh báo toàn thế giới về lỗi bảo mật mang tên Heartbleed. Heartbleed - một trong những sự cố nghiêm trọng nhất của Internet - xuất phát từ một lỗi lập trình rất đỗi... bình thường.

- SSL là nền tảng chuẩn của giao thức bảo mật HTTPS (do Công ty Netscape đề xuất vào năm 1994), giúp chuyển đổi tên người dùng dịch vụ và mật khẩu tương ứng thành dạng mật mã. Nhờ vậy, trong thao tác đăng nhập dịch vụ trên mạng, tên người dùng và mật khẩu không bị lộ khi truyền qua rất nhiều máy tính trung gian trên đường đi. Mỗi lần nhận được tên người dùng và mật khẩu, máy chủ dùng một chìa khóa bí mật (private key) để giải mật mã. Theo lý thuyết, giải mật mã khi không có chìa khóa bí mật là điều không thể. Tuyệt đối không thể!

- Nhờ lỗi bảo mật của OpenSSL, nhóm an ninh mạng Codenomicon đọc được từng phần khoảng 64 KB trên bộ nhớ máy chủ, phát hiện những tên người dùng đang hoặc đã đăng nhập máy chủ, cùng mật khẩu tương ứng (còn nằm trong bộ nhớ sau khi máy chủ giải mật mã) và phát hiện cả chìa khóa bí mật để giải mật mã! Điều không kém quan trọng là việc xâm nhập được thực hiện thông qua giao dịch với máy chủ như một người dùng bình thường, không để lại chút dấu vết nào có thể khiến người quản trị máy chủ nghi ngờ.

- Nguyên nhân gây lỗi không khó tìm. Lỗi bảo mật xuất hiện trong những phiên bản OpenSSL từ cuối năm 2011, sau khi Robin Seggelmann - nghiên cứu sinh thuộc Đại học Khoa học Ứng dụng Muenster (Đức) - bổ sung chức năng Heartbeat cho OpenSSL. Heartbeat vốn là một chức năng thông thường trong kỹ thuật mạng, nhằm duy trì trạng thái kết nối thường xuyên giữa máy chủ và máy khách, thay cho việc thực hiện thường xuyên một loạt thao tác mất thời gian như khi thiết lập kết nối. Để thực hiện chức năng Heartbeat, máy khách gửi đều đều mẩu nhỏ dữ liệu giả (nội dung không quan trọng) cho máy chủ sau từng khoảng thời gian ngắn, tựa như nhịp đập của tim. Mỗi khi nhận được dữ liệu giả, máy chủ gửi trả ngược về máy khách như một cách báo hiệu máy chủ vẫn đang hoạt động bình thường. "Nhịp tim" xuất hiện xen kẽ những lần trao đổi dữ liệu thực sự giữa máy chủ và máy khách.Chẳng may, trong chức năng Heartbeat của OpenSSL, khi đọc dữ liệu giả để gửi trả, máy chủ chỉ dựa vào khai báo chiều dài dữ liệu của phía khách. Nếu phía khách gửi dữ liệu ngắn hơn 64 KB nhưng khai báo chiều dài 64 KB, máy chủ vẫn gửi trả dữ liệu đủ 64 KB trên bộ nhớ, trong đó, ngoài dữ liệu giả nhận được, còn có nội dung nào đó trong bộ nhớ không thể lường trước. Theo cách như vậy, thông tin trong bộ nhớ của máy chủ bị rò rỉ. Codenomicon gọi đó là hiện tượng Heartbleed, nghĩa là “tim rỉ máu”. Cứ mỗi nhịp đập, tim lại rỉ máu!

Nguồn: http://echip.com.vn/heartbleed---nhip-dap-di-thuong-a20140505072155924-c1107.html


Nhận xét

Bài đăng phổ biến từ blog này

3Q6S - Tiêu chuẩn chất lượng công ty nhật

+  Ý nghĩa của 3Q6S -          Quality company: công ty tốt -          Quality worker: nhân viên tốt -          Quality Products : sản phẩm tốt -          Seiri : sắp xếp gọn gàng -          Seiton: đặt ngăn nắp, đúng chỗ -          Seiketsu : tinh khiết, sáng sủa -          Seisou: quét dọn sạch sẽ -          Saho : tác phong, hành động đúng -          Shitsuke : kỷ luật, nề nếp     – Lấy các chữ đầu của các mục trên để gọi là 3Q6S.        * Sắp xếp gọn gàng bao gồm ý nghĩa “Phân chia những vật cần thiết và không cần thiết, những vật không cần thiết không đặt ở nơi làm việc...

Tổng quan về solfware testing

Chương 1: Tổng quan về test phần mềm         1.1 Các giai đoạn test         1.2 Định nghĩa về test         1.3 Mục tiêu của test         1.4 Vai trò và nhiệm vụ của Tester. Chương 2: Những yêu cầu cần thiết khi thực hiện test        2.1 Ý nghĩa những tài liệu tester cần hiểu trước khi bắt đầu test        2.2 Hướng test cụ thể trong phần mềm Chương 3: Quy trình test       Sơ đồ tổng quát. Chương 4: Phương pháp test và kỹ thuật thiết kế testcase       4.1 Phương pháp test       4.2 Loại test       4.3 Test case Chương 5: Lỗi phổ biến trong phần mềm và cách Report Bug       5.1 13 lỗi phổ biến trong phần mềm (Bug type).       5.2 Report Bug Template. Chương 6: Test Plan và thế nào là Tester tốt A. TEST PLAN       I. Definitions:   ...

Các testcase cho màn hình login

I. Các thành phần thường có của màn hình login:     1. Logo     2. Username     3. Password     4. Remember Login     5. Submit button      ....... II. Các testcase: Check display when url is wrong Check validate of the code of url Check display of the login page when user enter url is true Check support Enter key for login button Check dislay when group is false Check login with correct username and password Check login with wrong username and password Check login with correct username and wrong password Check login with wrong username and correct password Check login with all empty fields Check login with correct username and empty password Check loginwith empty username and correct password Check when user checked [Remeber password] checkbox Check don't checked [Remeber password] checkbox Check unchecked [Remeber password] checkbox after checked [Remeber password] Check when user checked [Remebe...