Bao mat nhap mon

(ndkhanh157) #1

Phòng chống cho website


Dưới đây là một số cách phòng chống CSRF cơ bản:


 Sử dụng CSRF Token: Trong mỗi form hay request, ta đính kèm một CSRF token. Token
này được tạo ra dựa theo session của user. Khi gửi về server, ta kiểm tra độ xác thực
của session này. Do token này được tạo ngẫu nhiên dựa theo session nên hacker
không thể làm giả được (Các framework như RoR, CodeIgniter, ASP.NET MVC đều hỗ
trợ CSRF token).
 Kiểm tra giá trị Referer và Origin trong header: Origin cho ta biết trang web gọi
request này. Giá trị này được đính kèm trong mỗi request, hacker không chỉnh sửa
được. Kiểm tra giá trị này, nếu nó là trang lạ thì không xử lý request.
 Kiểm tra header X-Requested-With: Request chứa header này là request an toàn, vì
header này ngăn không cho ta gửi request đến domain khác (chi tiết).
 Cần cẩn thận đề phòng lỗi XSS: Với XSS, hacker có thể cài mã độc trên chính trang
web cần tấn công. Lúc này, mọi phương pháp phòng chống CSRF như token,
referrer đều bị vô hiệu hoá. Bản thân bác juno_okyo từng áp dụng lỗi CSS kết hợp
CSRF để tấn công sinhvienit.net (Chi tiết).

Tổng kết


Ngày trước lỗi này khá nghiêm trọng và phổ biến. Gần đây các framework hầu như đều mặc
định chống lỗi này nên tần suất gặp cũng ít đi. Tuy vậy ta vẫn phải đề phòng, nhất là các
website tự code nhé (Đặc biệt là code bằng PHP, ahihi).


Ngoài ra, là một user, bạn cần biết tự bảo vệ mình theo nhiều cách sau:


 Đăng xuất khỏi account sau khi sử dụng để tránh lưu cookie.
 Không click quảng cáo hay button lung tung.
 Không ghé thăm các trang bậy bạ, nguy hiểm. Như đã nói phía trên, nhiều khi ta không
bấm nút gì, chỉ cần truy cập trang, trình duyệt cũng tự động post dựa
trên javascript hoặc thẻ img. (Nếu bắt buộc, hãy sử dụng chế độ ẩn danh trong
Chrome).

Nguồn để tham khảo thêm:


 https://en.wikipedia.org/wiki/Cross-site_request_forgery
 https://www.owasp.org/index.php/Cross-Site_Request_Forgery_(CSRF)
 http://stackoverflow.com/questions/17478731/whats-the-point-of-the-x-requested-
with-header
 https://www.youtube.com/watch?v=m0EHlfTgGUU
Free download pdf