SSL có thực sự quan trọng đối với hầu hết các trang web?


11

Tôi đã khá hoang tưởng về việc học cách "làm bảo mật ngay" cho trang web này Tôi đang xây dựng (trang web không tầm thường đầu tiên tôi đã tạo) và tôi đã nhận thấy một điều làm phiền tôi: SSL.

Tôi đã đọc rất nhiều luồng bảo mật ở đây, trên StackOverflow và các nơi khác tiếp tục về việc tạo lại id phiên sau khi sử dụng và cách mật khẩu của bạn cần được lưu trữ, băm và không bao giờ được lưu trữ trong văn bản thuần túy. Tôi đã đọc rất nhiều về cách phát hiện khi một phiên bị tấn công, bằng cách theo dõi địa chỉ IP, tác nhân người dùng và bằng cách sử dụng cookie theo dõi.

Điều tôi không hiểu là bất kỳ điều gì trong số này quan trọng khi trang web đăng nhập bạn thông qua HTTP POST bình thường và gửi mật khẩu của bạn qua dây bằng văn bản thuần túy?

Tôi hiểu rằng tất cả các phương pháp khác mà tôi đã liệt kê là cần thiết để giảm mức độ hiển thị chung của bạn và có thể có một số trang web không cần bảo mật nhiều như vậy, nhưng tôi đoán những gì tôi đang hỏi là:

  • Khi nào không ổn với SSL?

Các trang web như Gmail, ngân hàng của bạn và LinkedIn, tôi có thể thấy có lý do để sử dụng SSL, nhưng điều gì làm cho nó ổn khi các trang web như Facebook và reddit không làm phiền (địa ngục, PlentyOfFish thậm chí lưu trữ mật khẩu của bạn bằng văn bản đơn giản và thậm chí gửi email để bạn hàng tuần như một lời nhắc nhở!?!)?

Tôi nên quan tâm đến việc đảm bảo SSL được thiết lập (đặc biệt là khi tôi bắt đầu với một máy chủ được chia sẻ và tôi bắt đầu khá rẻ)? Trang web của tôi sẽ không giữ bất kỳ thông tin cá nhân đặc biệt nào, nếu điều đó có ích. Nếu trang web trở thành một thành công, tôi nghiêm túc xem xét việc trả thêm tiền cho bảo mật được thêm vào.

Câu trả lời:


7

Nó quan trọng như bạn và người dùng của bạn nghĩ rằng nó quan trọng. Gửi mật khẩu qua http vì văn bản đơn giản sẽ khiến chúng dễ bị đánh hơi gói. Bây giờ liệu ai đó sẽ thực sự bận tâm đánh hơi những gói đó là một câu chuyện hoàn toàn khác. Nếu bạn muốn đảm bảo người dùng của mình trải nghiệm an toàn nhất có thể, hãy sử dụng SSL cho lần gửi đăng nhập của họ. Nếu bạn nghĩ rằng người dùng của bạn sẽ hạnh phúc hơn và có nhiều khả năng tương tác với trang web của bạn theo cách tích cực (ví dụ: mua công cụ, làm công cụ, v.v.) thì hãy sử dụng SSL để gửi đăng nhập của họ. Nếu bạn có bất cứ thứ gì đáng để ăn cắp (tức là thông tin người dùng) thì hãy sử dụng SSL.

Nếu bạn không có bất cứ thứ gì đáng để ăn cắp, đừng nghĩ SSL sẽ tăng cường bảo mật hoặc tất cả, hoặc người dùng của bạn sẽ không xem đó là một tính năng hữu ích thì bạn có thể muốn xem xét không sử dụng SSL.

Đối với chi phí để cài đặt chứng chỉ SSL, trừ khi bạn đang ở trong ngân sách hạn hẹp, việc bảo mật đăng nhập của trang web không bao giờ là điều xấu. Và đừng để những gì các trang web khác đang làm ảnh hưởng đến bạn vì nhiều trang web lớn hơn không cần thiết phải tuân theo các thực tiễn tốt nhất, đó là lý do tại sao dường như có một dòng tin tức ổn định về một người bị xâm phạm theo một cách nào đó.


1
+1 "nhiều trang web lớn hơn không cần thiết phải tuân theo các thực tiễn tốt nhất" - Tôi chắc chắn sẽ có một số tiêu đề gây cười khi người Nigeria ở Nigeria tìm ra cách kiếm tiền từ hồ sơ trang web hẹn hò bị đánh cắp :)
danlefree

"trừ khi bạn đang ở trong ngân sách hạn hẹp" - nhưng tôi thì có. Tôi thực sự, thực sự, đến mức tôi đang cân nhắc việc đi m + m trên một máy chủ chia sẻ giá rẻ thay vì trả ít hơn đáng kể mỗi tháng để trả trước một năm. Bằng cách này, tôi có thể rút phích cắm nếu trang web không bắt đầu tự thanh toán tương đối nhanh chóng. Tôi nghĩ bây giờ tôi đang nghiêng về không ssl vì chỉ cần có ip tĩnh cần thiết sẽ tăng gần gấp đôi chi phí hàng tháng của tôi, chưa kể đến chi phí của chính chứng chỉ. Trang web này khá gần với vai trò là một diễn đàn và hầu hết dữ liệu là công khai, do đó không cần mã hóa ngoài đăng nhập.
AgentConundrum

@danlefree, Thật dễ dàng. Sử dụng các chi tiết cá nhân trên các trang web hẹn hò để trả lời các câu hỏi khôi phục mật khẩu cho email và trang web ngân hàng của người dùng. Hoặc chỉ cần nắm bắt mật khẩu, vì mọi người sử dụng lại mật khẩu của họ, đến nay rất nhiều.
Zoredache

@AgentConundrum Startssl cung cấp chứng chỉ SSL miễn phí. Nếu bạn có ngân sách eo hẹp nhưng có IP tĩnh, bạn có thể thực hiện điều đó.
Rana Prathap

@AgentConundrum bạn không cần IP chuyên dụng cho SSL nữa, miễn là máy chủ của bạn hỗ trợ SNI (và nếu họ không, hãy tìm máy chủ mới vì họ không biết họ đang làm gì). Bạn có thể nhận được một chứng chỉ miễn phí, vì vậy đó cũng không phải là một chi phí gia tăng ...
Doktor J

3

Theo cách tiếp cận ngược lại với câu trả lời của John, tôi nghĩ bạn nên nghiêm túc xem xét SSL nếu bạn xử lý bất kỳ thông tin nhận dạng cá nhân nào - bao gồm: tên có địa chỉ thực, địa chỉ email, thông tin tài chính và thông tin liên lạc mà người dùng mong muốn là riêng tư .

Trừ khi trang web của bạn cung cấp phương tiện để người dùng xuất bản thông tin về bản thân, bạn nên xem xét mọi thông tin nhận dạng cá nhân do người dùng cung cấp sẽ được bạn giữ và bạn chỉ được bảo mật nghiêm ngặt trừ khi chính sách bảo mật của trang web thông báo cho người dùng của bạn.

Ngăn chặn các bên thứ ba trái phép nhìn thấy thông tin của khách truy cập của bạn và thông báo cho người dùng của bạn về cách bạn sử dụng thông tin của họ để duy trì niềm tin của khách truy cập.

Ngay cả Facebook cũng làm điều này, theo như tôi có thể nói.

<form method="POST" action="https://login.facebook.com/login.php?login_attempt=1" id="login_form" onsubmit=";var d=document.documentElement;if (d.onsubmit) { return d.onsubmit(event); }else { return Event.fire(d, &quot;submit&quot;, event); }">

(Nguồn HTML đăng nhập Facebook.com)


Lạ Tôi không biết làm thế nào tôi không nhận thấy điều đó cho Facebook. Tôi đã xem xét nó từ HTTPFox và bằng cách nào đó đã bỏ lỡ 's' theo yêu cầu ban đầu. Tôi sẽ chỉnh sửa để loại bỏ điều đó. Thực tế vẫn còn rất nhiều trang web làm điều này (reddit, tin tặc, TDWTF, v.v.), vì vậy tệ nhất là tôi không thể tốt hơn họ. Ngân sách là mối quan tâm lớn của tôi, vì vậy, để chi thêm $ 5 / tháng cho một IP tĩnh (trên máy chủ $ 8 / tháng ...) cũng như mua một chứng chỉ đàng hoàng .. Tôi gần như chỉ xem xét việc không xây dựng cái chết tiệt đó Địa điểm.
AgentConundrum

@AgentConundrum - Nói đúng ra, bạn có thể chuyển mật khẩu chạy qua thuật toán băm một chiều qua HTTP nếu mật khẩu được xử lý, vì vậy tôi sẽ không quá ngạc nhiên khi thấy triển khai băm MD5 trên các trang web không sử dụng SSL: pyhome.org.uk/crypt/md5
danlefree

và làm thế nào để xây dựng một hàm băm ở phía khách hàng sẽ giúp được gì? Trong trường hợp đó, về cơ bản băm là mật khẩu . Tôi có thể chụp băm và phát lại dễ dàng như tôi có thể chụp mật khẩu.
Zoredache

1
@Zoredache Đó là lý do tại sao băm phải được muối . Đây là cách nó hoạt động: Tôi gửi cho bạn trang đăng nhập với mã thông báo được điền trước bao gồm microtime()cuộc gọi từ máy chủ. Hàm băm được truyền của bạn là sự kết hợp của mật khẩu của bạn + microtime()và, sau khi tôi nhận được hàm băm của mình, tôi làm mất hiệu lực của microtime()cặp thách thức / phản hồi mật khẩu + (nó không thể được sử dụng lại).
danlefree

3

Kể từ tháng 8 năm 2014, Google đã chính thức chỉ ra rằng HTTPS sẽ được sử dụng làm tín hiệu xếp hạng.

Điều này có nghĩa là ngay cả khi trang web của bạn là một trang web hoàn toàn tĩnh, nếu bạn quan tâm đến SEO, ít nhất bạn nên xem xét việc thiết lập chứng chỉ SSL.

Tất nhiên HTTPS chỉ là một tín hiệu xếp hạng trong số hàng trăm, vì vậy có lẽ có nhiều điều quan trọng hơn bạn có thể làm cho SEO.


Google cũng thông báo rằng vì việc thiết lập chứng chỉ SSL cần có tài nguyên, bạn chỉ cần làm điều đó nếu trang web của bạn yêu cầu. Nói tóm lại, họ đã đề cập rằng thứ hạng của bạn sẽ không bị ảnh hưởng chỉ vì bạn không thiết lập chứng chỉ SSL trên blog cá nhân của bạn.
Rana Prathap

1

Đây là một góc độ bạn có thể chưa xem xét: không sử dụng SSL / TLS có thể khiến người dùng của bạn phải theo dõi thụ động ngay cả khi trang web của bạn không có thông tin đăng nhập.

Một tác nhân đe dọa có thể chỉ đơn giản là ngồi giữa người dùng của bạn và phần còn lại của Internet, xem tất cả các URL mà người dùng của bạn yêu cầu và xây dựng mô hình những thứ mà người dùng của bạn đang xem. Các bit thông tin riêng lẻ thực sự có thể không đáng kể trong sự cô lập, nhưng kết hợp nhiều bit thông tin nhỏ có thể tạo ra một bức tranh lớn hơn nhiều.

Vì lý do này, tôi cung cấp HTTPS trên trang web của riêng tôi, nơi chỉ cung cấp nội dung tĩnh.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.