CSRF là gì? Tổng hợp kiến thức cần biết về CSRF

Bạn đã bao giờ đăng nhập vào một tài khoản có giao diện gần giống Facebook và bị mất tài khoản? Nếu bạn đang thắc mắc kiểu tấn công của chúng - thì câu trả lời là CSRF. Vậy CSRF là gì? Một cuộc tấn công CSRF chỉ được sử dụng để đánh cắp tài khoản Facebook hay gì khác? Một cuộc tấn công CSRF nguy hiểm như thế nào? Làm thế nào để tránh bị tấn công sẽ được bật mí trong bài viết!

Tìm hiểu về CSRF

CSRF là gì?

CSRF là một kỹ thuật tấn công mạo danh chủ thể của chúng, CSRF, còn được gọi bằng những cái tên như: Yêu cầu ross-site Forgery, XSRF tốt đẹp phiên cưỡi; Trong một số trường hợp, CSRF được phát âm là lướt sóng.

Nói một cách dễ hiểu, một cuộc tấn công CSRF sẽ khiến người dùng thực hiện các thao tác xác thực với trang web mà họ đang thực hiện. Sau đó, hacker dựa trên thông tin / thao tác của người dùng hacker sẽ thực hiện "mượn quyền" chủ sở hữu.

CSRF-la-gi

Hậu quả của một cuộc tấn công CSRF là gì?

Khi tin tặc thành công trong việc khiến người dùng không biết rằng họ đang bị tấn công, họ sẽ bắt đầu thực hiện các hành động sau:

  • Thay đổi email của người dùng, thông tin đăng nhập
  • Đánh cắp thông tin cá nhân của người dùng trong tài khoản
  • Chuyển tiền bất hợp pháp
  • Tùy thuộc vào mục đích tấn công, hacker có thể chỉ yêu cầu một số hành động nhất định hoặc có toàn quyền kiểm soát tài khoản của người dùng.
  • Trường hợp tài khoản đó là tài khoản quản lý ứng dụng hoặc trang web thì khi tiếp quản tài khoản đó, họ sẽ toàn quyền quản lý trang web và ứng dụng đó.

Có thể nói, hậu quả của một cuộc tấn công CSRF không hề nhẹ!

Một cuộc tấn công CSRF hoạt động như thế nào?

Trong phần này, thuthuatkiemtien.com sẽ giải thích dựa trên các ví dụ để ngay cả những người không học về mã hóa cũng có thể hiểu được. Nếu bạn muốn tham khảo thông tin kỹ thuật của một cuộc tấn công CSRF, bạn có thể tham khảo bài viết của OWASP - một tổ chức phi lợi nhuận giúp tăng tính bảo mật cho phần mềm!

Các điều kiện để một cuộc tấn công CSRF diễn ra

Để một cuộc tấn công CSRF diễn ra, cần có ba điều kiện chính:

  • Các đặc quyền nhắm mục tiêu hành động yêu cầu của kẻ tấn công của người dùng như thay đổi mật khẩu, yêu cầu chuyển tiền, v.v.
  • Cuộc tấn công CSRF sẽ diễn ra dựa trên cookie phiên của nạn nhân. Ví dụ, một hacker đưa một loạt các yêu cầu HTTP vào ứng dụng và ứng dụng không thể phân biệt được đâu là yêu cầu của người dùng và đâu là yêu cầu của tin tặc.
  • Đừng nhắm đến những thông tin không thể đoán trước. Ví dụ: nếu hành động của tin tặc nhằm yêu cầu thông tin không thể đoán trước hoặc không thể truy xuất được, chẳng hạn như yêu cầu chuyển khoản ngân hàng. Thao tác này sẽ yêu cầu khá nhiều thứ như: OTP, mật khẩu và một số yêu cầu xác thực danh tính khác.

CSRF. ví dụ tấn công

Mở đầu bài viết thuthuatkiemtien.com đã đề cập ở phần đầu bài viết, chúng ta sẽ lấy ví dụ về trường hợp bị tấn công đánh cắp tài khoản Facebook!

Vào một ngày tồi tệ, bạn quyết định truy cập vào một trang web không đáng tin cậy và có khả năng chứa nhiều nội dung độc hại như: trang web có nội dung 18+, trang web cá cược, v.v.

Bạn vô tình nhấp vào một biểu ngữ hoặc trang web. Đột nhiên, một yêu cầu đăng nhập tài khoản Facebook xuất hiện để tiếp tục xem nội dung. Và bạn thực hiện đăng nhập theo yêu cầu của trang web.

Tuy nhiên, chúng sẽ dẫn bạn đến một trang Facebook giả giống hệt Facebook thật nhưng với các liên kết khác nhau. Khi bạn điền thông tin vào biểu mẫu giả mạo, chúng sẽ ẩn thông báo yêu cầu cấp quyền đổi mật khẩu Facebook cho bạn. Nếu thông tin đăng nhập của bạn là chính xác, Facebook sẽ tự động xác nhận bạn bè thực hiện hành động trên.

Tin tặc sẽ chiếm tài khoản Facebook của bạn hoàn toàn tự động. Khi đăng nhập vào Facebook, bạn sẽ chỉ nhận được một thông báo:

CSRF-la-gi

Tuy nhiên, hiện tại các tài khoản Facebook không dễ bị tấn công và đánh cắp như trước đây. Nhưng bạn vẫn sẽ phải cảnh giác với không chỉ tài khoản Facebook của mình mà còn các tài khoản tại nhiều trang web khác.

Cách ngăn chặn CSRF

Cho đến nay, vẫn chưa có phương pháp nào có thể chống lại cuộc tấn công của CSRF hiệu quả 100%. Vì vậy, điều bạn có thể làm là đề phòng trước khi cuộc tấn công CSRF diễn ra.

Ngăn chặn CSRF phía máy chủ

Nếu bạn xây dựng ứng dụng, bạn có thể học hỏi những cách bảo mật của các ngân hàng và các nhà phát triển lớn như Amazon, Google như sau:

  • Sử dụng Captcha, OTP và các yêu cầu xác thực an toàn khác
  • Kiểm tra địa chỉ IP
  • Sử dụng csrf_token thay thế

Sử dụng Captcha, OTP và các yêu cầu xác thực an toàn khác

Khi bạn sử dụng mã ngẫu nhiên, bạn sẽ loại bỏ được khá nhiều bot đưa ra yêu cầu liên tục đến trang web và ứng dụng của bạn.

Đối với các thao tác đặc quyền như: thay đổi mật khẩu, đăng nhập, đặt lại mật khẩu, chuyển khoản, thanh toán đơn hàng, .. bạn nên áp dụng các phương pháp bảo mật như:

  • Yêu cầu sinh trắc học dấu vân tay trên thiết bị di động
  • Yêu cầu OTP qua email, số điện thoại - thuthuatkiemtien.com nhận thấy các ứng dụng hiện nay yêu cầu OTP qua điện thoại rất nhiều, tức là rất hiệu quả.
  • Gửi liên kết để yêu cầu xác nhận qua email, số điện thoại, nếu bạn dùng Shopee thì thấy ứng dụng này sẽ gửi link yêu cầu số điện thoại => bạn bấm vào => bấm xác nhận.
  • Gửi yêu cầu đến thiết bị di động để xác minh với tư cách là Google.

Kiểm tra địa chỉ IP

Một trong những điều mà hacker thường sử dụng là sử dụng địa chỉ VPN để ẩn địa chỉ IP. Do đó, bạn có thể chặn địa chỉ IP của các VPN để tránh bị hack cũng là một giải pháp.

Sử dụng csrf_token thay thế

Mã thông báo của bạn sẽ thay đổi liên tục trong phiên. Nếu các yêu cầu thay đổi thông tin có cùng ID phiên, bạn có thể xóa các yêu cầu đó.

CSRF-la-gi

Ngăn chặn CSRF phía máy khách

Đối với người dùng, bạn cần lưu ý những điều sau:

  • Đăng xuất khỏi tài khoản khi thực hiện các giao dịch, tài khoản, trang web quan trọng sau khi hoàn thành công việc. Hiện tại, các nền tảng thương mại điện tử sẽ thường xuyên giúp bạn đăng xuất khỏi máy tính sau một khoảng thời gian ngắn.
  • Không nhấp vào các URL và liên kết đáng ngờ. Khái niệm “đáng ngờ” khá “mơ hồ”, nhưng bạn chỉ cần cảnh giác với những địa chỉ email lạ, SMS lạ, v.v.
  • Xoá cookies Sau khi sử dụng website cũng là một cách phòng chống CSRF hiệu quả.

Đến đây thì bạn cũng đã hiểu rõ hơn về CSRF là gì rồi phải không? Hầu hết các ứng dụng và dịch vụ chính sẽ có các phương pháp hay nhất và được cập nhật liên tục để giúp bạn tránh bị tấn công CSRF. Tuy nhiên, bạn vẫn nên cảnh giác hết mức có thể! thuthuatkiemtien.com chúc bạn luôn an toàn trên internet.

Câu hỏi thường gặp về CSRF

Làm cách nào để xóa cookie trên Chrome?

Để xóa cookie trên một trang web nhất định khi bạn đang sử dụng trình duyệt Chrome, hãy làm như sau:

Nhấn nút khóa ngay trên thanh địa chỉ web => Cookie => bạn bấm vào Tẩy tất cả các cookie có liên quan đến trang web bạn đang sử dụng => đặt lại Chrome.

Vì vậy, cookie trang web và thông tin đăng nhập của bạn đã bị xóa khỏi trình duyệt Chrome.

Giao thức HTTPS có thể giúp giảm thiểu các cuộc tấn công CSRF không?

Không, giao thức HTTPS không có bất kỳ tác dụng nào đối với các cuộc tấn công CSRF. Tuy nhiên, HTTPS sẽ giúp giảm thiểu các cuộc tấn công bảo mật thông thường khác.

Có thể xây dựng một ứng dụng chỉ chấp nhận các yêu cầu POST đối với CSRF không?

Về ý tưởng: ứng dụng được thiết kế để chỉ nhận các yêu cầu POST để thực hiện logic nghiệp vụ, hacker không thể tạo liên kết độc hại và không thể diễn ra các cuộc tấn công CSRF.

Tuy nhiên, điều này là hoàn toàn sai lầm! Giống như ví dụ trên, hacker chỉ cần tạo một biểu mẫu giả với các thông số ẩn, sau đó người dùng sẽ kích hoạt nó vì nghĩ rằng biểu mẫu đó có mục đích khác.

Làm cách nào để sử dụng tính năng Viết lại URL để chống lại CSRF?

Khi viết lại URL, hacker sẽ không thể tìm thấy ID phiên của nạn nhân và sẽ không thể đoán được. Tuy nhiên, ID phiên của người dùng sẽ hiển thị trên URL. Do đó, thuthuatkiemtien.com cho rằng phương pháp này không phải là cách tốt để “điền lỗi”.

CÔNG TY CỔ PHẦN TẬP ĐOÀN TINO

  • Trụ sở chính: L17-11, Lầu 17, Tòa nhà Vincom Center, Số 72 Lê Thánh Tôn, P. Bến Nghé, Q.1, TP.
    VPĐD: 42 Trần Phú, P.4, Q.5, TP.HCM
  • Điện thoại: 0364 333 333
    Tổng đài miễn cước: 1800 6734
  • Email: sales@tino.org
  • Trang web: www.tino.org

Xem thêm nhiều bài viết về : Kiến Thức Cơ Bản

Nguồn: CSRF là gì? Tổng hợp kiến thức cần biết về CSRF

Nhận xét

Bài đăng phổ biến từ blog này

3 Cách để kiếm tiền từ blog WordPress

Google AdSense bỏ giới hạn số lượng quảng cáo trên mỗi trang

Toàn tập danh sách liên kết đơn trong C++