Tấn công phát lại (Replay Attack) còn được gọi là Playback Attack, là một dạng tấn công mạng trong đó việc truyền dữ liệu hợp lệ được lặp lại hoặc trì hoãn một cách ác ý hoặc gian lận. Nó thậm chí còn trở nên nguy hiểm khi kẻ tấn công có thể kiểm soát dữ liệu bằng cách hủy và giả mạo dữ liệu hợp lệ trong quá trình vận chuyển. Replay Attack được thực hiện bằng cách đánh cắp yêu cầu HTTP và yêu cầu lập lại yêu cầu tương tự từ máy tính của kẻ tấn công. Điều này cũng bao gồm đánh cắp dữ liệu bí mật như Username, Password và mật khẩu băm.
4 cơ chế phòng thủ cuộc tấn công Replay Attack: Cách thứ nhất là cách tiếp cận dựa trên dấu thời gian (timestamp), trong đó máy chủ chỉ chấp nhận tin nhắn nếu nó nằm trong phạm vi thời gian được chấp nhận, từ chối các tin nhắn phát lại sau phạm vi thời gian đó. Nó dễ bị tấn công trong khung thời gian cho phép đó. Số thứ tự là một cách bảo vệ khác, chỉ định số thứ tự cho mỗi yêu cầu để yêu cầu của một số thứ tự cũ hơn sẽ không được máy chủ chấp nhận. Phương pháp này cũng gặp phải vấn đề khi kẻ tấn công chặn yêu cầu hợp pháp và gửi một yêu cầu bất hợp pháp với cùng số thứ tự. Cách thứ ba là phản hồi thử thách, theo đó máy chủ gửi một thử thách mà chỉ cso máy khách hợp pháp mới có thể tính toán nó. Bằng cách này, tin nhắn sẽ được làm mới và không thể được sử dụng lại. Cách cuối cùng là ghi nhật ký tin nhắn, trong đó máy chủ lưu tất cả các tin nhắn và nó kiểm tra từng tin nhắn xem nó có đến trước hay không. Nếu nó ở đó trong các tin nhắn đã nhận, máy chủ sẽ từ chối nó. Nó chiếm nhiều bộ nhớ và không thể được sử dụng trong các tình huống thực tế.
Một số tiêu chí để kiểm tra xem liệu một giao thức có thể bảo vệ việc phát lại và các cuộc tấn công song song được đề xuất. Sau đó, nó kiểm tra nhiều giao thức theo tiêu chí mà họ đưa ra. Tiêu chí dựa trên bốn lĩnh vực - tính mới của tin nhắn, tính đối xứng của tin nhắn, tin nhắn được ký không an toàn và bắt tay phản hồi thử thách. Nếu mỗi tin nhắn không có thành phần mới (fresh), Replay Attack có thể được thực hiện bằng cách khai thác ý tưởng rằng nó có thể được sử dụng lại. Tính đối xứng của các tin nhắn nằm ở khả năng tính toán của việc chuyển đổi mật mã tiếp theo từ một tin nhắn đã gửi. Nếu mã tin nhắn tiếp theo có thể được tính toán (đối xứng) hoặc buộc người dùng hợp pháp phải tính toán, thì kẻ tấn công có thể thực hiện một cuộc tấn công Replay Attack. Tin nhắn đã ký về bản chất là an toàn, nhưng nếu nó không có bất kỳ chức năng ràng buộc người dùng nào (chữ ký chung có thể được sử dụng bởi bất kỳ ai), kẻ tấn công có thể lấy chữ ký đó và mạo danh người dùng hợp pháp bằng cách sử dụng chữ ký bị đánh cắp này. Bắt tay phản hồi thử thách thường có một số bước và ít một bước phải dựa trên chuyển đổi mật mã liên quan đến danh tính của người dùng hợp pháp (người nhận), mà chỉ có người dùng hợp pháp mới có thể thực hiện. Nếu không đúng như vậy, kẻ tấn công có thể sử dụng các tin nhắn tương tự để xác thực một hệ thống mới sử dụng Cookie một lần của máy chủ trung gian đã được đề xuất để ngăn chặn việc chiếm quyền điều khiển phiên. Nhược điểm của hệ thống là nó cung cấp thêm chi phí cho máy chủ mới mà không thực sự bảo vệ khỏi bị chiếm quyền điều khiển phiên. Nếu kẻ tấn công có thể nắm giữ yêu cầu của người dùng hợp pháp (bằng các tiện ích mở rộng trình duyệt độc hại hoặc các cuộc tấn công cấp hệ thống), thì kẻ tấn công có thể sử dụng Cookie không sử dụng đó để chiếm quyền điều khiển phiên. Một giao thức bảo mật dựa trên Cookie, họ đề xuất một cách để tìm khóa cho mỗi Cookie, đó là băm của ID khách hàng, dữ liệu, ID phiên SSL và bí mật máy chủ. Nó đã được tuyên bố rằng nó cung cấp tính bảo mật tốt và phònh thủ chống lại cuộc tấn công Replay Attack, vì nó sử dụng ID phiên SSL để tìm khóa mã hóa. Mặc dù lược đồ này cung cấp tính bảo mật tốt và bảo vệ phát lại (cho phiên), nó không thể được sử dụng cho nhiều phiên.
Tài liệu tham khảo
1. J. Joseph and S. Bhadauria, "Cookie Based Protocol to Defend Malicious Browser Extensions," 2019 International Carnahan Conference on Security Technology (ICCST), 2019, pp. 1-6, doi: 10.1109/CCST.2019.8888425.
Web lưu trữ kiến thức cá nhân đã tham khảo và thấy hữu ích cho người đọc. Các bạn có thể đóng góp bài viết qua địa chỉ: dzokha1010@gmail.com