Bảo mật: Ẩn tập tin chi tiết kết nối mysql


7

Ok, vì vậy tôi biết đây phải là một câu hỏi rất cơ bản, nhưng vấn đề của tôi là: Tôi đã phát triển ứng dụng PHP đầu tiên của mình (vì vậy tôi khá mới với điều này) và tôi khá chắc chắn rằng có hai tệp của ứng dụng web của tôi cần được bảo vệ bằng cách nào đó khỏi con mắt tò mò

  • một trong những chi tiết để kết nối với db
  • một mật khẩu băm và chìa khóa muối

Làm thế nào tôi nên đi bảo vệ họ? Tôi đã đọc ở đâu đó rằng chúng nên được đặt ở đâu đó phía trên thư mục công cộng của tôi, nhưng sau đó ứng dụng sẽ có thể truy cập chúng như thế nào? Tôi có nên thay đổi thứ gì đó trong cấu hình apache của mình để Document Root khác với thứ khác không?

Bất kỳ điều gì khác tôi nên xem xét về mặt bảo mật? Cho đến nay tôi đang thoát khỏi mọi trường người dùng đi vào db bằng mysql_real_escape_opes (), nhưng ngoài việc đó và băm và muối mật khẩu, tôi không làm gì khác.

Câu trả lời:


7

Nếu không biết thêm về ứng dụng của bạn hoặc xem một số mã thực sự, thật khó để đưa ra bất kỳ lời khuyên bảo mật chi tiết nào. Điều đó đang được nói ở đây là một số điều mà tôi suy nghĩ sau khi đọc bài viết của bạn:

1: Giữ tệp cấu hình của bạn với cơ sở dữ liệu kết nối thông tin và khóa muối bên ngoài thư mục công cộng và chmod nó thành 444 hoặc 644. Bạn có thể truy cập một thư mục phía trên tập lệnh của mình bằng cách thực hiện như thế này<?php include('../config.php'); ?>

2: Luôn luôn thực hiện bất kỳ thông tin nào đi vào cơ sở dữ liệu, nhưng hãy xem xét chuyển sang mysqli vì mysql_real_escape_opes không được chấp nhận kể từ PHP 5.5.0 và sẽ bị xóa trong tương lai.

3: Tôi không biết hệ thống xác thực của bạn trông như thế nào, nhưng hãy đảm bảo bạn không lưu trữ dữ liệu quan trọng như mật khẩu trong cookie. Điều này quay trở lại điểm đầu tiên của tôi là không thể đưa ra lời khuyên tốt mà không xem mã của bạn nhưng có rất nhiều bài viết, hướng dẫn và giải pháp được xây dựng trước để bảo mật xác thực người dùng - /programming/1624846/ php-best-Practice-for-user-xác thực và bảo mật mật khẩu


Cảm ơn câu trả lời của bạn. Tôi sẽ phải tiếp tục thử # 1 cho đến khi tôi nhận được nó. Tôi không biết về mysql_real_escape_opes bị phản đối, tôi sẽ kiểm tra nó. Ngoài ra, cảm ơn cho các liên kết.
bơ thực vật
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.