CSRF là gì? Cách nhận biết và phòng chống tấn công

Trong bài viết này, chúng ta sẽ tìm hiểu chi tiết về CSRF, cách nhận biết dấu hiệu của tấn công này và áp dụng các biện pháp phòng chống hiệu quả.

Xem thêm:

Đề xuất quy trình, giải pháp phòng chống với Firewall Pfsense

Dấu hiệu nhận biết SQL Injection(SQLi) chuẩn nhất

1. CSRF là gì?

CSRF (Cross-Site Request Forgery), hay còn gọi là tấn công giả mạo yêu cầu từ trang khác, là một kiểu tấn công mạng lợi dụng sự tin tưởng của trình duyệt và người dùng để thực hiện các hành động trái phép trên một website mà người dùng đã đăng nhập.

2. Cách hoạt động của CSRF

Khi người dùng đăng nhập vào một trang web, trình duyệt sẽ lưu trữ thông tin đăng nhập (cookies). Kẻ tấn công khai thác điều này bằng cách tạo ra các yêu cầu giả mạo hoặc gửi yêu cầu bất hợp pháp đến máy chủ của trang web thông qua trình duyệt của người dùng.

Ví dụ:

  • Kẻ tấn công gửi email chứa liên kết giả mạo.
  • Người dùng nhấp vào liên kết, dẫn đến việc vô tình thực hiện một giao dịch không mong muốn, như chuyển tiền hoặc thay đổi thông tin tài khoản.

3. Hậu quả của tấn công CSRF

Một cuộc tấn công CSRF có thể gây ra những hậu quả nghiêm trọng:

  • Tiết lộ thông tin cá nhân: Kẻ tấn công có thể truy cập dữ liệu nhạy cảm như tài khoản ngân hàng hoặc thông tin cá nhân.
  • Thực hiện hành động trái phép: Các giao dịch tài chính không mong muốn, thay đổi thông tin tài khoản, hoặc xâm nhập trái phép vào hệ thống.
  • Mất mát dữ liệu: Kẻ tấn công có thể xóa, chỉnh sửa hoặc thêm dữ liệu trên website, gây rối loạn hoạt động của doanh nghiệp.
  • Mất uy tín: Một cuộc tấn công thành công có thể làm giảm đáng kể lòng tin của người dùng đối với website.

4. Dấu hiệu nhận biết tấn công CSRF

Tấn công CSRF thường khó nhận biết, nhưng bạn có thể lưu ý một số dấu hiệu sau:

  • Thay đổi bất thường: Các thay đổi không mong muốn trên tài khoản, như thay đổi email hoặc mật khẩu mà bạn không thực hiện.
  • Yêu cầu xác thực bất thường: Đột nhiên được yêu cầu đăng nhập lại hoặc xác thực thông tin mà không rõ lý do.
  • Hoạt động lạ trên tài khoản: Lịch sử đăng nhập hiển thị từ địa điểm hoặc thời gian bất thường.

5. Cách phòng chống tấn công CSRF

Phòng chống CSRF cần sự phối hợp từ cả phía người dùngmáy chủ.

5.1. Biện pháp cho người dùng

  • Đăng xuất sau khi sử dụng: Luôn đăng xuất khỏi các tài khoản quan trọng (ngân hàng, mạng xã hội) sau khi sử dụng.
  • Không nhấp vào liên kết đáng ngờ: Kiểm tra kỹ đường dẫn trước khi nhấp vào, đặc biệt với các liên kết được gửi qua email hoặc mạng xã hội.
  • Không lưu thông tin đăng nhập trên trình duyệt: Tránh chọn “Lưu mật khẩu” hoặc “Ghi nhớ đăng nhập”.
  • Sử dụng thiết bị riêng: Đăng nhập trên các thiết bị cá nhân và không để người khác sử dụng chung.
  • Hạn chế mở nhiều trang web cùng lúc: Khi thực hiện giao dịch quan trọng, tránh mở thêm các trang web khác để giảm nguy cơ bị tấn công.

5.2. Biện pháp cho máy chủ

  1. Sử dụng CSRF Token
    • Tạo một mã thông báo duy nhất (csrf_token) cho mỗi phiên làm việc.
    • Yêu cầu mã này được gửi cùng với mọi yêu cầu để xác thực tính hợp lệ.
  2. Sử dụng CAPTCHA
    • Thêm CAPTCHA để xác nhận các hành động quan trọng như đăng nhập, chuyển khoản hoặc thay đổi thông tin tài khoản.
  3. Tách biệt cookies
    • Đặt trang quản trị trên một subdomain riêng (vd: admin.example.com) để ngăn chia sẻ cookies giữa frontend và backend.
  4. Kiểm tra địa chỉ IP
    • Giới hạn quyền truy cập vào hệ thống quản trị chỉ từ các địa chỉ IP đáng tin cậy hoặc thông qua mạng nội bộ (VPN).
  5. Xác nhận qua email
    • Với các thay đổi quan trọng, gửi email chứa đường dẫn xác nhận để đảm bảo chính chủ thực hiện.

5. Kết luận

Tấn công CSRF là một nguy cơ nghiêm trọng với cả người dùng và doanh nghiệp. Hiểu rõ cách hoạt động, hậu quả và các biện pháp phòng chống là yếu tố then chốt để bảo vệ hệ thống và thông tin cá nhân. Hi vọng bài viết hữu ích. Cảm ơn bạn đã tham khảo trên ttnguyen.net.

Bài viết liên quan:

Triển khai giải pháp phòng chống DoS bằng CSF

Triển khai thử nghiệm tấn công ARP Poisoning

Nguyễn Tiến Trường

Mình viết về những điều nhỏ nhặt trong cuộc sống, Viết về câu chuyện những ngày không có em