2012-06-18 29 views
5

Tôi hỏi điều này vì tôi duy trì một trang web nhỏ cho một nhóm người khá cô lập (không quá 80). Hiện tại nó có chức năng đăng nhập đơn giản (e-mail, mật khẩu) và dữ liệu được "bảo vệ" chỉ là thông tin liên lạc với các thành viên của chúng tôi (điện thoại, địa chỉ, e-mail). Trang web được viết bằng PHP và sử dụng My SQL.Mức độ bảo mật thực sự cần thiết trên trang web "riêng tư" là bao nhiêu?

Hai ngày gần đây nhất, tôi đã đọc qua các diễn đàn và các trang web khác về bảo mật trang web, vì tôi muốn tăng cường nó trên trang web của chúng tôi. Ngay bây giờ bảo mật bao gồm bảo vệ SQL-injection và mật khẩu băm MD5 được lưu trữ trong cơ sở dữ liệu. Điều này cảm thấy abit không đủ nhưng tôi cũng cảm thấy rằng nó dễ dàng để có nó TOO đến nay. Tôi có nghĩa là nó không phải là mã khởi động hạt nhân chính xác ở đây, nhưng dữ liệu mọi người thường cảm thấy không thoải mái để hiển thị trực tuyến. Bản thân trang web được lưu trữ bởi một máy chủ web khá nổi tiếng.

Mối đe dọa duy nhất mà tôi có thể thấy ngay bây giờ là những kẻ lừa đảo vấp ngã trên trang web và cố gắng một số nhà của họ làm cho concotion?

Vì vậy, tôi nghĩ ở đâu đó ở giữa sẽ đủ. Giống như

  • bảo vệ SQL-injection (nâng cao nếu cần) phương pháp băm
  • mạnh với muối
  • XSS bảo vệ
  • DDoS bảo vệ
  • SSL khi truy cập vào khu vực thành viên

Bạn nghĩ gì về những người có kinh nghiệm hơn?

Cập nhật: Tôi muốn thêm rằng tôi tự làm mọi thứ và không có ngân sách để mua các kỹ thuật mã hóa lạ mắt hoặc thuê người lập trình chuyên nghiệp.

+0

_Trang web được lưu trữ bởi một máy chủ lưu trữ web khá nổi tiếng _... không riêng tư nữa! –

+0

Sử dụng bcrypt để băm mật khẩu của bạn, nó không chỉ dành cho các trang web bảo mật cao và việc sử dụng nó có thể dễ dàng như khi sử dụng băm md5. Có các thư viện như [phpass] (http://www.openwall.com/phpass/), và nếu bạn muốn hiểu cách nó hoạt động, bạn có thể đọc [article] này (http://www.martinstoeckli.ch/ php/php.html # ssl_bcrypt). – martinstoeckli

+0

Những người quan trọng của bạn sẽ là bảo vệ SQL Injection, Mật khẩu tối thiểu phức tạp cho tài khoản người dùng, Mật khẩu mạnh trên tài khoản SSH/quản trị viên của bạn (hoặc vô hiệu hóa hoàn toàn mật khẩu và sử dụng xác thực khóa công khai cho tài khoản quản trị), bảo vệ tệp từ xa, XSS bảo vệ và cách ly người dùng cho quy trình httpd của bạn. Rất vui khi có SSL cho nội dung sau xác thực. Không bắt buộc trong trường hợp này là cải thiện băm mật khẩu trong cơ sở dữ liệu, bảo vệ DDoS và bảo vệ CSRF. Không có gì sai khi có những thứ đó, nhưng trừ khi bạn có kẻ tấn công được nhắm mục tiêu, bạn sẽ không cần chúng. – aroth

Trả lời

3

Để tăng cường an ninh cho SQL injection, bạn phải xem:

Nó sẽ cho bạn biết sử dụng PDO, truy vấn tham số.

Để tìm hiểu về vấn đề an ninh chung, xem bài này trong đó bao gồm rất nhiều:

Audit trang web của bạn về an ninh sử dụng:

phpSec là một mã nguồn mở PHP thư viện an ninh rằng sẽ chăm sóc của các nhiệm vụ an ninh chung một khuôn mặt phát triển web.

+0

Điều đó có yêu cầu cài đặt không? Nguyên nhân tôi không có quyền truy cập vào máy chủ vì đây là máy chủ được chia sẻ. – Sandokan

+0

@Sandokan: Có, nhưng sẽ không lo lắng về nó. Đọc hướng dẫn bảo mật và sau đó mã xem xét các điểm đó. – Sarfraz

1

Thêm bảo vệ lỗ hổng CSRF vào danh sách bảo mật của bạn

Các vấn đề liên quan