PDA

View Full Version : Bảo mật nội dung cập nhật vào CSDL



webphp
25-10-2011, 13:21
Mình muốn tạo 1 form dùng để cho Khách hàng nhập liệu.
Vd thông tin là những đoạn code(PHP, ASPx..)
--> sẽ có những ký tự đặc biệt. Nếu như thế sẽ dể dàng bị lỗi (Hack).
Nếu dùng code để replace thì có tốt không?
Vậy làm thế nào để hiển thi tốt. mà không làm ảnh hưởng đến đến web(bị hack)

Các bác biết hướng dẫn giúp
thanks

vnntech.com
25-10-2011, 20:03
đã hack được rồi thì trong code của bác kiểu gì trả có hàm giải mã dữ liệu, chỉ có cách là làm bảo mật cho tốt thôi chứ replace kiểu đó thì không ổn.

webphp
26-10-2011, 14:41
đã hack được rồi thì trong code của bác kiểu gì trả có hàm giải mã dữ liệu, chỉ có cách là làm bảo mật cho tốt thôi chứ replace kiểu đó thì không ổn.
Bạn có thể nói rõ hơn. Vì nếu nói thế không biết cách gì để làm cả

vnntech.com
27-10-2011, 15:02
khi bạn xây dựng mã hóa thì chắc chắn bạn phải có hàm giải mã đúng không? mà hàm giải mã này không nằm trong source code của bạn thì khi hiển thị dữ liệu cũng không ai hiểu được đúng không bạn? chính vì vậy khi hack đã chiếm quyền vào web của bạn rồi thì kiểu gì nó cũng sẽ lấy được dữ liệu của bác, dù bác có mã hóa kiểu gì đi chăng nữa

webphp
27-10-2011, 15:10
Vậy có hướng nào ok không?

vnntech.com
28-10-2011, 11:26
chỉ có cách là làm bảo mật cho tốt thôi, còn muốn tốt nữa thì phải tự xây dựng backend cho mình.

sonnb
28-10-2011, 14:17
1. Lọc dữ liệu đầu vào. Ví dụ: post_id là int nên chỉ chấp nhận giá trị int. Nếu không lọc rất dễ bị injection
2. Remove những tag không cần thiết trong dữ liệu nhập vào. Ví dụ bài viết không cần tag script thì nên lọc hết,... Bạn có thể tìm hiểu thêm bằng cách search "HTML Sanitizer".
3. Với MySQL thì mỗi khi insert cần dùng mysql_real_escape_string. Đây là bắt buộc kể cả bạn đã lọc ở 2 bước trên.
4.5.6... Các tip khác thì khi bạn thuần thục các bước trên sẽ tự có nhu cầu tìm hiểu.