Bài đăng này chỉ áp dụng cho Firefox và Chromium / Google Chrome. Tôi không thể nhận xét về Internet Explorer, Opera hoặc trình duyệt di động. Ngoài ra, toán học của tôi xuống sâu hơn có thể sai, nhưng ý tưởng cơ bản là chính xác.
Tất nhiên, điều này là có thể, tuy nhiên, trong trường hợp của Firefox và Chrome / Chromium, không thể xảy ra.
Mật khẩu của tôi (được lưu trong trình duyệt) có an toàn không?
Câu trả lời này là một trong những mục yêu thích của tôi: Nó phụ thuộc. Mật khẩu được lưu bởi trình duyệt cần phải thực hiện một quan trọng, và, từ một điểm bảo mật của xem, cơn ác mộng, điều kiện: Họ cần phải được rõ hoặc hoàn nguyên để plaintext.
Plaintext so với Encrypted vs. Hashing
Tại sao điều đó là xấu? Chà, tưởng tượng ai đó đột nhập vào một máy chủ và đánh cắp cơ sở dữ liệu mật khẩu. Có hai kết quả có thể xảy ra:
- Các mật khẩu là bản rõ (hoặc dễ dàng đảo ngược), do đó, cracker hiện có quyền truy cập đầy đủ vào tất cả các tài khoản.
- Mật khẩu được băm (hoặc được mã hóa), một cuộc tấn công vũ phu chống lại băm sẽ là cần thiết để lấy mật khẩu và truy cập vào tài khoản. Ngay cả bây giờ khi tên người dùng và mật khẩu của bạn bị đánh cắp, tài khoản của bạn vẫn an toàn.
Vì trình duyệt cần có khả năng gửi mật khẩu đến các trang web, nó không thể băm mật khẩu, nó chỉ có thể mã hóa chúng (hoặc thậm chí lưu trữ chúng dưới dạng văn bản gốc). Đây là điều mà mọi người nên luôn luôn ghi nhớ (tương tự đối với các ứng dụng email, ứng dụng trò chuyện, v.v.).
Chỉ vì nó được mã hóa, không có nghĩa là nó an toàn
Firefox, theo mặc định, cho phép bạn lưu mật khẩu. Nó cũng mã hóa chúng . Điều tương tự cũng áp dụng cho Chromium (xem phần phụ lục "Chà, nó phụ thuộc ..." ). Vấn đề với điều này là chìa khóa để giải mã cũng được lưu trữ cùng với mật khẩu. Điều này làm cho mã hóa trở thành một bất tiện nhỏ cho người muốn mật khẩu của bạn và không ngăn chặn chúng theo bất kỳ cách nào.
Sau đó, không lưu trữ khóa với mật khẩu!
Đúng vậy, để làm cho mật khẩu an toàn hơn , chúng ta cần lấy chìa khóa ra khỏi mật khẩu được mã hóa. Điều này được thực hiện trong Firefox bằng cách đặt Mật khẩu chủ , sau đó được sử dụng để mã hóa và giải mã tất cả mật khẩu của bạn. Bằng cách sử dụng kỹ thuật này, bạn tách khóa khỏi dữ liệu được mã hóa, đây luôn là một ý tưởng hay (rốt cuộc, bạn không giữ chìa khóa cửa trước của mình trên một cái móc ở phía trước cửa bên ngoài, phải không?).
Mật khẩu chỉ an toàn khi bạn tạo chúng
Vì vậy, tại sao tôi đã nói trước đó rằng mật khẩu của bạn bây giờ an toàn hơn và không an toàn ? Bởi vì bây giờ sự an toàn của mật khẩu của bạn phụ thuộc vào mật khẩu bạn đã chọn. Đó là, mật khẩu "asdf" không nên được coi là an toàn dưới bất kỳ hình thức nào; cũng không phải là "12345". Mật khẩu tốt là dài , bởi vì vũ phu buộc chúng mất một lượng thời gian đáng kể. Mật khẩu "VioletIsAntherColor" về mặt kỹ thuật an toàn hơn "D0! L4riZe" vì độ dài của nó, mặc dù thực tế là cái thứ hai chứa các ký tự đặc biệt. Chúng ta hãy có một cái nhìn ngắn về điều đó.
"VioletIsAntherColor"
Độ dài: 20
ký tự có thể có: 52 (26 chữ thường + 26 chữ hoa)
"D0! L4riZe"
Độ dài: 9
Ký tự có thể có: 77 (26 dưới + 26 trên + 10 chữ số + 15 đặc biệt)
Đặc biệt :! "@ $% & / () =? * + # -
Vì vậy, chúng ta cần bao nhiêu nỗ lực để phá vỡ các mật khẩu đó, biết bộ ký tự và độ dài của chúng?
"VioletIsAntherColor"
52 20 = ~ 20 tỷ (~ 2 × 10 34 )
"D0! L4riZe"
77 9 = ~ 95 triệu (~ 9 × 10 16 )
Như chúng ta thấy, mật khẩu sau, mặc dù có bộ ký tự rộng hơn, nhưng dễ dàng hơn so với mật khẩu dài với bộ hạn chế. Điều này là do chiều dài. (Một nhược điểm khác là cái đầu tiên dễ nhớ hơn.) Xem câu hỏi Bảo mật CNTT này để biết chi tiết về vấn đề này.
Vì vậy, nếu có thể, hãy sử dụng cụm mật khẩu, không phải mật khẩu .
Quay lại chủ đề, mật khẩu của tôi an toàn từ một addon giả mạo như thế nào?
Họ không phải. Điều này là do các addon có quyền truy cập vào trang web bạn vừa truy cập. Họ có thể trích xuất thông tin từ nó, bao gồm cả mật khẩu đã nhập. Addons là một rủi ro bảo mật như bất kỳ phần mềm được cài đặt nào khác. Chỉ cài đặt addons mà bạn tin tưởng.
Tuyệt quá! Làm thế nào để tôi biết điều đó?
Chỉ cài đặt addons từ các nguồn bạn tin tưởng. Đối với Firefox, đó là trang AddOns và cho Chromium, đó là Cửa hàng Chrome trực tuyến hoặc nếu bạn tin tưởng tác giả / nhà phân phối. Cả hai đều đảm bảo rằng AddOns được kiểm tra và an toàn.
Cả trang Mozilla AddOns và Chrome Web Store đều không đảm bảo theo bất kỳ cách nào mà addon an toàn. Họ sử dụng các quy trình đánh giá tự động có thể hoặc có thể bắt các addon độc hại. Vào cuối ngày, vẫn còn một rủi ro.
Chỉ cài đặt addons từ các nguồn mà bạn tin tưởng.
Đợi một chút; bạn vừa đề cập đến phần mềm cài đặt khác?
Tất nhiên! Không có gì cản trở các phần mềm được cài đặt khác lấy mật khẩu của bạn từ trình duyệt, thực hiện các cuộc tấn công trung gian hoặc thậm chí phục vụ một proxy giả mạo các trang web ngân hàng của bạn. Điều tương tự cũng xảy ra với Trình cắm trình duyệt. Nguyên tắc chung là: Không cài đặt phần mềm bạn không thể tin tưởng.
Phần kết luận
Những gì bạn nên lấy đi từ này?
- Không bao giờ cài đặt phần mềm / plugin / addons mà bạn không tin tưởng.
- Nếu bạn vẫn còn nghi ngờ, hãy đặt mật khẩu chính.
- Nếu vẫn còn nghi ngờ, đừng tin vào trình duyệt của bạn bằng mật khẩu, đừng bao giờ lưu chúng.
- Nếu vẫn còn nghi ngờ, không bao giờ cài đặt bất kỳ addons / plugin nào.
- Nếu vẫn còn nghi ngờ, hãy sử dụng một hệ thống trực tiếp , không thể bị giả mạo.
Phụ lục: "Chà, nó phụ thuộc ..."
Khi tôi tìm hiểu, các giả định của tôi trong đoạn này không chính xác 100% và tôi muốn sửa nó. Các thông tin sau chỉ áp dụng cho việc lưu trữ mật khẩu trên đĩa.
Google Chrome / Chromium
Nó thực sự không lưu mật khẩu của bạn một cách an toàn trên đĩa, tùy thuộc vào hệ điều hành nó đang chạy trên:
Microsoft Windows
API Microsoft Windows CryptProtectData
/ CryptUnprotectData
được sử dụng để mã hóa / giải mã mật khẩu. API này hoạt động với mật khẩu tài khoản hệ điều hành của bạn, vì vậy nó chỉ an toàn như mật khẩu đó.
Hệ điều hành Mac
Lớp cho MacOS tạo một khóa ngẫu nhiên dựa trên mật khẩu của móc khóa của người dùng hiện tại và thêm khóa đó vào móc khóa. Một lần nữa, điều này chỉ an toàn như mật khẩu của người dùng.
Linux
Chà ... đừng nói về nó.
Được rồi, nếu bạn phải biết, nó thực hiện chính xác những gì tôi giả định: nó lưu trữ dữ liệu bằng mật khẩu được mã hóa cứng. Tại sao điều này là trường hợp? Đơn giản là vì không có cơ sở hạ tầng chung để xử lý dữ liệu được mã hóa theo cách của hai hệ thống kia. Không, tôi không chỉ nói rằng Linux thiếu hệ thống mã hóa hoặc bảo mật; có rất nhiều giải pháp lưu trữ khóa / khóa và mật khẩu có sẵn trong không gian người dùng . Có vẻ như, các nhà phát triển Chrome đã quyết định không sử dụng một trong số đó. "Tại sao?" không phải là một câu hỏi tôi có thể trả lời.
Firefox
Luôn sử dụng khóa được tạo được lưu trữ cùng với mật khẩu. Ngoại lệ là nếu bạn đặt mật khẩu chính, thì điều này cũng sẽ được sử dụng.