Tôi có biểu mẫu web và tôi đang sử dụng PHP. Tôi biết rằng các biểu mẫu có thể được điều khiển (tôi tin rằng nó được gọi là tấn công phát lại hoặc một cuộc tấn công giữa người). Vì vậy, tôi muốn sử dụng mã thông báo xác thực như một trường ẩn.Cách ngăn chặn tấn công phát lại biểu mẫu/man-in-the-middle trong PHP, csrf, xsrf
Các khả năng đe dọa rằng tôi nhận thức được là:
- Attacker hijacks dạng của người sử dụng hợp pháp (điều này tôi tin là man-in-the-middle tấn công)
- người sử dụng hợp pháp là chính mình kẻ tấn công: anh ta nhận được biểu mẫu, đọc mã thông báo nhưng sử dụng nó để gửi dữ liệu nguy hiểm (điều này tôi tin là tấn công phát lại)
Trước khi tôi nhận được câu hỏi, hãy sửa tôi nếu bất cứ điều gì tôi đã nói cho đến nay là không chính xác, bởi vì có lẽ sự hiểu biết của tôi là thiếu sót.
Bây giờ đến câu hỏi:
- các thực hành tốt nhất để tạo ra dấu hiệu này để các hình thức mà không có nó bị từ chối là gì (ví dụ, muối?).
- Mọi người làm gì để đảm bảo mã thông báo không được phát lại.
mới hỏi nhỏ dựa trên nhận xét:
- là phiên tặc giống như man-in-the-middle tấn công?
Vì một lý do nào đó, tôi nghĩ bạn đang quá phức tạp quá trình này. Tại sao xác nhận dữ liệu không đủ? Bạn có quan tâm đến dữ liệu biểu mẫu bị tấn công mà ai đó sẽ gửi không? Và nó đã thay đổi? Hoặc các mẫu đăng nhập? (có thể được thực hiện qua SSL để loại bỏ kẻ tấn công trung gian). – Jakub
Có lẽ tôi đã quá phức tạp, tôi không biết. Nó có vẻ phức tạp và đầy quá nhiều sơ hở khi tôi đọc về nó. Nhưng câu hỏi 1 vẫn hợp lệ vì tôi không biết thực hành tốt nhất để tạo ra mã thông báo đó là gì :) Cho dù câu hỏi 2 (câu hỏi về việc phát lại mã thông báo) có hợp lệ hay không, tôi cũng hy vọng cũng hiểu được. – Chris
Bạn chắc chắn đang sử dụng sai hỏng. Có vẻ như bạn đang nói về xác thực dữ liệu chủ yếu. –