Tại sao bạn nên lo lắng bất cứ khi nào một cơ sở dữ liệu mật khẩu của dịch vụ bị rò rỉ

Mục lục:

Tại sao bạn nên lo lắng bất cứ khi nào một cơ sở dữ liệu mật khẩu của dịch vụ bị rò rỉ
Tại sao bạn nên lo lắng bất cứ khi nào một cơ sở dữ liệu mật khẩu của dịch vụ bị rò rỉ

Video: Tại sao bạn nên lo lắng bất cứ khi nào một cơ sở dữ liệu mật khẩu của dịch vụ bị rò rỉ

Video: Tại sao bạn nên lo lắng bất cứ khi nào một cơ sở dữ liệu mật khẩu của dịch vụ bị rò rỉ
Video: Cách lưu trữ ảnh và video online trên Google Photo bộ nhớ không giới hạn hoàn toàn miễn phí - YouTube 2024, Tháng tư
Anonim
“Cơ sở dữ liệu mật khẩu của chúng tôi đã bị đánh cắp ngày hôm qua. Nhưng đừng lo: mật khẩu của bạn đã được mã hóa.”Chúng tôi thường xuyên thấy các câu như thế này trực tuyến, kể cả ngày hôm qua, từ Yahoo. Nhưng liệu chúng ta có nên thực sự nhận những đảm bảo này theo mệnh giá không?
“Cơ sở dữ liệu mật khẩu của chúng tôi đã bị đánh cắp ngày hôm qua. Nhưng đừng lo: mật khẩu của bạn đã được mã hóa.”Chúng tôi thường xuyên thấy các câu như thế này trực tuyến, kể cả ngày hôm qua, từ Yahoo. Nhưng liệu chúng ta có nên thực sự nhận những đảm bảo này theo mệnh giá không?

Thực tế là thỏa hiệp cơ sở dữ liệu mật khẩu một mối quan tâm, không có vấn đề làm thế nào một công ty có thể cố gắng để quay nó. Nhưng có một vài điều bạn có thể làm để cách ly chính mình, bất kể thực tiễn bảo mật của công ty xấu đến mức nào.

Mật khẩu nên được lưu trữ như thế nào

Dưới đây là cách các công ty lưu trữ mật khẩu trong một thế giới lý tưởng: Bạn tạo một tài khoản và cung cấp mật khẩu. Thay vì lưu trữ mật khẩu, dịch vụ tạo ra một "băm" từ mật khẩu. Đây là một dấu vân tay duy nhất không thể đảo ngược được. Ví dụ: mật khẩu “mật khẩu” có thể biến thành nội dung trông giống “4jfh75to4sud7gh93247g…”. Khi bạn nhập mật khẩu của mình để đăng nhập, dịch vụ sẽ tạo ra một băm từ nó và kiểm tra xem giá trị băm có khớp với giá trị được lưu trữ trong cơ sở dữ liệu hay không. Dịch vụ không bao giờ tự lưu mật khẩu của bạn vào đĩa.

Để xác định mật khẩu thực của bạn, kẻ tấn công có quyền truy cập vào cơ sở dữ liệu sẽ phải tính toán trước các băm cho các mật khẩu phổ biến và sau đó kiểm tra xem chúng có tồn tại trong cơ sở dữ liệu hay không. Những kẻ tấn công làm điều này với các bảng tra cứu - danh sách lớn các băm phù hợp với mật khẩu. Sau đó băm có thể được so sánh với cơ sở dữ liệu. Ví dụ, kẻ tấn công sẽ biết hàm băm cho “password1” và sau đó xem liệu có bất kỳ tài khoản nào trong cơ sở dữ liệu đang sử dụng băm đó hay không. Nếu có, kẻ tấn công biết mật khẩu của họ là “password1”.
Để xác định mật khẩu thực của bạn, kẻ tấn công có quyền truy cập vào cơ sở dữ liệu sẽ phải tính toán trước các băm cho các mật khẩu phổ biến và sau đó kiểm tra xem chúng có tồn tại trong cơ sở dữ liệu hay không. Những kẻ tấn công làm điều này với các bảng tra cứu - danh sách lớn các băm phù hợp với mật khẩu. Sau đó băm có thể được so sánh với cơ sở dữ liệu. Ví dụ, kẻ tấn công sẽ biết hàm băm cho “password1” và sau đó xem liệu có bất kỳ tài khoản nào trong cơ sở dữ liệu đang sử dụng băm đó hay không. Nếu có, kẻ tấn công biết mật khẩu của họ là “password1”.

Để ngăn chặn điều này, các dịch vụ nên "muối" băm của chúng. Thay vì tạo một băm từ chính mật khẩu, chúng thêm một chuỗi ngẫu nhiên vào trước hoặc cuối mật khẩu trước khi băm nó. Nói cách khác, người dùng sẽ nhập mật khẩu “mật khẩu” và dịch vụ sẽ thêm muối và băm mật khẩu trông giống như “password35s2dg.” Mỗi tài khoản người dùng phải có muối duy nhất của riêng họ và điều này sẽ đảm bảo rằng mỗi tài khoản người dùng sẽ có một giá trị băm khác cho mật khẩu của chúng trong cơ sở dữ liệu. Ngay cả khi nhiều tài khoản sử dụng mật khẩu “password1”, chúng sẽ có các băm khác nhau do các giá trị muối khác nhau. Điều này sẽ đánh bại một kẻ tấn công đã cố gắng tính toán băm trước cho mật khẩu. Thay vì có thể tạo băm được áp dụng cho mọi tài khoản người dùng trong toàn bộ cơ sở dữ liệu cùng một lúc, họ phải tạo băm duy nhất cho mỗi tài khoản người dùng và muối duy nhất của tài khoản đó. Điều này sẽ mất nhiều thời gian tính toán và bộ nhớ.

Đây là lý do tại sao dịch vụ thường nói không phải lo lắng. Một dịch vụ sử dụng thủ tục bảo mật thích hợp nên nói rằng họ đang sử dụng băm mật khẩu muối. Nếu họ chỉ đơn giản nói rằng mật khẩu được "băm", điều đó đáng lo ngại hơn. LinkedIn băm mật khẩu của họ, ví dụ, nhưng họ không mặn họ - vì vậy nó là một vấn đề lớn khi LinkedIn mất 6,5 triệu mật khẩu băm trong năm 2012.

Thực tiễn Mật khẩu Không hợp lệ

Đây không phải là điều khó thực hiện nhất, nhưng nhiều trang web vẫn quản lý để gây rối nó theo nhiều cách khác nhau:
Đây không phải là điều khó thực hiện nhất, nhưng nhiều trang web vẫn quản lý để gây rối nó theo nhiều cách khác nhau:
  • Lưu trữ mật khẩu trong văn bản thuần túy: Thay vì bận tâm với băm, một số người phạm tội tồi tệ nhất có thể chỉ đổ các mật khẩu ở dạng văn bản thuần túy vào một cơ sở dữ liệu. Nếu cơ sở dữ liệu như vậy bị xâm nhập, mật khẩu của bạn rõ ràng là bị xâm phạm. Việc họ mạnh đến mức nào.
  • Đập các mật khẩu mà không có Salting Them: Một số dịch vụ có thể băm mật khẩu và từ bỏ, chọn không sử dụng muối. Cơ sở dữ liệu mật khẩu như vậy sẽ rất dễ bị tổn thương với bảng tra cứu. Kẻ tấn công có thể tạo băm cho nhiều mật khẩu và sau đó kiểm tra xem chúng có tồn tại trong cơ sở dữ liệu không - chúng có thể làm điều này cho mọi tài khoản cùng một lúc nếu không sử dụng muối.
  • Tái sử dụng muối: Một số dịch vụ có thể sử dụng muối, nhưng họ có thể sử dụng lại cùng một muối cho mỗi mật khẩu tài khoản người dùng. Điều này là vô nghĩa - nếu cùng một muối được sử dụng cho mọi người dùng, hai người dùng có cùng mật khẩu sẽ có cùng một giá trị băm.
  • Sử dụng muối ngắn: Nếu các muối chỉ bằng một vài chữ số được sử dụng, nó sẽ có thể tạo ra các bảng tra cứu kết hợp mọi muối có thể. Ví dụ, nếu một chữ số được sử dụng làm muối, kẻ tấn công có thể dễ dàng tạo ra các danh sách các băm kết hợp mọi muối có thể.

Các công ty sẽ không luôn luôn nói cho bạn biết toàn bộ câu chuyện, vì vậy ngay cả khi họ nói mật khẩu đã được băm (hoặc băm nhỏ và muối), họ có thể không sử dụng các phương pháp hay nhất. Luôn luôn sai về mặt thận trọng.

Các mối quan tâm khác

Có khả năng giá trị muối cũng có trong cơ sở dữ liệu mật khẩu. Đây không phải là xấu - nếu một giá trị muối duy nhất được sử dụng cho mỗi người dùng, những kẻ tấn công sẽ phải tiêu tốn một lượng lớn năng lượng CPU phá vỡ tất cả các mật khẩu đó.

Trong thực tế, rất nhiều người sử dụng mật khẩu rõ ràng, có thể dễ dàng xác định mật khẩu của nhiều tài khoản người dùng. Ví dụ: nếu kẻ tấn công biết mã băm của bạn và họ biết muối của bạn, họ có thể dễ dàng kiểm tra xem bạn có đang sử dụng một số mật khẩu phổ biến nhất hay không.

Nếu kẻ tấn công có nó ra cho bạn và muốn crack mật khẩu của bạn, họ có thể làm điều đó với sức mạnh vũ phu miễn là họ biết giá trị muối - mà họ có thể làm.Với cơ sở dữ liệu mật khẩu, địa phương, truy cập ngoại tuyến, kẻ tấn công có thể sử dụng tất cả các cuộc tấn công vũ lực mà họ muốn.

Dữ liệu cá nhân khác cũng có khả năng bị rò rỉ khi cơ sở dữ liệu mật khẩu bị đánh cắp: Tên người dùng, địa chỉ email và nhiều thứ khác. Trong trường hợp rò rỉ của Yahoo, các câu hỏi và câu trả lời bảo mật cũng bị rò rỉ - điều mà chúng ta đều biết, làm cho việc lấy cắp quyền truy cập vào tài khoản của ai đó dễ dàng hơn.

Giúp tôi, tôi nên làm gì?

Bất kể dịch vụ nào nói khi cơ sở dữ liệu mật khẩu của nó bị đánh cắp, tốt nhất là giả sử rằng mọi dịch vụ đều hoàn toàn không đủ năng lực và hành động phù hợp.

Trước tiên, không sử dụng lại mật khẩu trên nhiều trang web. Sử dụng trình quản lý mật khẩu tạo mật khẩu duy nhất cho mỗi trang web. Nếu kẻ tấn công tìm cách khám phá mật khẩu của bạn cho một dịch vụ là “43 ^ tSd% 7uho2 # 3” và bạn chỉ sử dụng mật khẩu đó trên một trang web cụ thể, họ đã không học được gì hữu ích. Nếu bạn sử dụng cùng một mật khẩu ở mọi nơi, họ có thể truy cập vào các tài khoản khác của bạn. Đây là số tài khoản của mọi người bị “tấn công”.

Nếu một dịch vụ bị xâm phạm, hãy chắc chắn thay đổi mật khẩu bạn sử dụng ở đó. Bạn cũng nên thay đổi mật khẩu trên các trang web khác nếu bạn sử dụng lại ở đó - nhưng bạn không nên làm điều đó ngay từ đầu.
Nếu một dịch vụ bị xâm phạm, hãy chắc chắn thay đổi mật khẩu bạn sử dụng ở đó. Bạn cũng nên thay đổi mật khẩu trên các trang web khác nếu bạn sử dụng lại ở đó - nhưng bạn không nên làm điều đó ngay từ đầu.

Bạn cũng nên cân nhắc sử dụng xác thực hai yếu tố, điều này sẽ bảo vệ bạn ngay cả khi kẻ tấn công biết mật khẩu của bạn.

Điều quan trọng nhất là không sử dụng lại mật khẩu. Cơ sở dữ liệu mật khẩu bị xâm nhập không thể làm hại bạn nếu bạn sử dụng mật khẩu duy nhất ở mọi nơi - trừ khi chúng lưu trữ một thứ gì đó quan trọng khác trong cơ sở dữ liệu, như số thẻ tín dụng của bạn.

Đề xuất: