Bảo mật trang web có thể nói là rất quan trọng. csrf là một loại tấn công rất phổ biến vào các trang web không an toàn ngày nay. Nếu bạn là một lập trình viên, bạn cần phải đề phòng các cuộc tấn công như vậy để bảo mật ứng dụng web của mình.
Vậy csrf là gì?
csrf , còn được gọi là kỹ thuật tấn công “ Yêu cầu giả mạo trên nhiều trang web “, là kỹ thuật tấn công giả mạo chính. csrf đề cập đến một cuộc tấn công vào xác thực yêu cầu web thông qua việc sử dụng cookie. Đây là nơi tin tặc có thể sử dụng các thủ thuật để đưa ra yêu cầu mà bạn không biết. Vì vậy, csrf là một hacker lạm dụng sự tin cậy của ứng dụng web trên trình duyệt của nạn nhân.
Cách hoạt động
csrf là một cuộc tấn công làm xáo trộn nhằm tăng khả năng xác thực và ủy quyền của nạn nhân khi thực hiện các yêu cầu giả mạo đối với máy chủ. Vì vậy, một lỗ hổng csrf ảnh hưởng đến quyền của người dùng như quản trị viên, khiến họ có quyền truy cập đầy đủ.
Khi gửi một yêu cầu http, trình duyệt của nạn nhân sẽ nhận được một cookie. Cookie thường được sử dụng để lưu trữ phiên (đọc thêm về phiên là gì? Để tìm hiểu thêm về phiên và cách cookie hoạt động) để xác định người dùng mà không cần phải xác thực lại mọi yêu cầu được gửi.
Nếu phiên xác thực của nạn nhân được lưu trữ trong một cookie hợp lệ và nếu ứng dụng không an toàn, thì nó rất dễ bị tấn công csrf. Kẻ tấn công có thể cố gắng sử dụng csrf để chạy bất kỳ yêu cầu nào đối với ứng dụng web, ngay cả khi trang web không thể phân biệt giữa yêu cầu thật và giả.
Để hiểu rõ hơn về ví dụ, khi ứng dụng web có một chức năng đơn giản để thay đổi mật khẩu của người dùng. Đã gửi đến máy chủ thông qua phương thức lấy http thông thường. Nội dung gửi là mật khẩu mới và xác nhận mật khẩu vừa nhập:
- Khi người dùng đăng nhập vào trang web của bạn, một cookie sẽ được tạo và lưu trên trình duyệt, và không cần đăng nhập lại khi truy cập trang web lần sau. Giả sử bạn chưa đăng xuất, cookie của bạn vẫn có giá trị trong phiên.
- Bây giờ, nếu trang web của bạn bị lỗi csrf, người dùng sẽ vô tình truy cập vào trang tin tặc giả mạo với mục đích lấy tài khoản từ ứng dụng web của bạn. Trong một trang web giả mạo, tin tặc sẽ sử dụng một đoạn mã chạy url để cố tình đặt lại mật khẩu người dùng trên trang web của bạn: https: // website-cua-ban .com / lỗ hổng bảo mật / csrf /? Password_new = hacked & amp; password_conf = hacked & amp; change = thay đổi #
- Bạn nên đăng xuất khỏi các trang web quan trọng sau khi giao dịch xong: tài khoản ngân hàng, thanh toán trực tuyến, mạng xã hội, gmail….
- Bạn nên đăng nhập vào một máy tính riêng biệt và không cho phép người thứ hai tiếp xúc với máy tính đó.
- Không nhấp vào các liên kết bạn nhận được qua email, facebook … Khi bạn di chuột qua một liên kết, góc dưới bên trái của trình duyệt sẽ hiển thị địa chỉ của trang web mục tiêu và bạn nên chú ý đặt nó rẽ phải. trang bạn muốn.
- Không có thông tin mật khẩu nào được lưu trữ trong trình duyệt của bạn. Không nên chọn “Đăng nhập tiếp theo”, “Lưu mật khẩu” …
- Không truy cập các trang web khác có thể chứa mã có thể bị kẻ tấn công lợi dụng khi thực hiện các giao dịch hoặc truy cập các trang web quan trọng.
- Sử dụng Captcha, Thông báo xác nhận : Captcha được sử dụng để xác định đối tượng của hệ điều hành có phải là con người hay không. Mã xác minh thường được sử dụng cho các hoạt động quan trọng như “đăng nhập” hoặc “chuyển khoản” và “thanh toán”. Các chức năng quan trọng như đặt lại mật khẩu và xác nhận thay đổi thông tin tài khoản cũng cần được gửi qua địa chỉ email đã đăng ký, để người dùng bấm xác nhận.
- Sử dụng csrf_token : Mã thông báo này liên tục thay đổi trong phiên và khi thông tin được đính kèm với thông tin mã thông báo này được thay đổi. Nếu mã thông báo được tạo không khớp với mã đã gửi, hãy xóa yêu cầu.
- Sử dụng cookie riêng cho các trang quản trị: Bạn nên giữ các trang quản trị trên một tên miền phụ riêng biệt để chúng không chia sẻ cookie với giao diện người dùng của sản phẩm. Ví dụ: nó phải là admin.topdev.vn hoặc tốt hơn là topdev.vn/admin.
- Kiểm tra ip: Một số hệ thống quan trọng chỉ cho phép truy cập từ các ips đặt trước hoặc chỉ cho phép truy cập quản lý qua ip cục bộ hoặc vpn.
Vì vậy, khi nạn nhân (người dùng) vô tình vào website-hacker-gia-mao.com, cô ấy đã đặt lại mật khẩu của mình tại website-cua-ban .com. Nếu hacker biết thông tin tên người dùng, anh ta sẽ cố gắng sử dụng mật khẩu đã đặt để nhập: đã hack, có thể nhập bình thường.
Cách ngăn chặn các cuộc tấn công csrf
Dựa trên nguyên tắc của csrf “lừa người dùng (hoặc người dùng) trình duyệt gửi lệnh http”, thông thường để tránh bị tấn công, chúng tôi sẽ chia nó thành hai đối tượng, một là máy khách (người dùng cuối), và khác là máy chủ.
Có thể bạn quan tâm
Khách hàng
Để tránh trở thành nạn nhân của cuộc tấn công csrf, bạn nên làm như sau:
Phía máy chủ
Cho đến nay, chưa có gì được thực hiện để ngăn chặn hoàn toàn csrf. Dưới đây là một số kỹ thuật có thể được sử dụng.
topdev vừa giới thiệu kiến thức csrf là gì? Tìm hiểu các kỹ thuật tấn công csrf và cách ngăn chặn các cuộc tấn công giả mạo csrf. Hy vọng thông tin trong bài giúp ích cho những ai đang tìm hiểu thông tin. chúc vui vẻ!