Công ty TNHH TMĐT Công nghệ LP

4.0/5 (913 Reviews)

Mặc dù CSRF không phải là một khái niệm mới trong lĩnh vực bảo mật nhưng nhiều lập trình viên vẫn chưa hoàn toàn hiểu rõ về cách thức hoạt động cũng như các biện pháp phòng tránh hiệu quả. Bài viết này của LPTech sẽ giúp bạn hiểu rõ CSRF là gì, cách thức hoạt động của tấn công CSRF và quan trọng hơn là các phương pháp phòng chống CSRF để bảo vệ ứng dụng của bạn khỏi những mối nguy hiểm này. Cùng tìm hiểu ngay nhé!

CSRF là gì?

CSRF (Cross-Site Request Forgery) là một hình thức tấn công mà kẻ xấu giả mạo người dùng để thực hiện các hành động, yêu cầu như thay đổi mật khẩu, nhắn tin lừa đảo, chuyển tiền,... trên các ứng dụng và ứng dụng web mà người bị giả mạo không hề hay biết. 

Ví dụ, nếu người dùng đã đăng nhập vào tài khoản ngân hàng trực tuyến và kẻ tấn công biết được phiên đăng nhập của người dùng, kẻ tấn công có thể gửi yêu cầu chuyển tiền từ tài khoản của người dùng đến tài khoản của mình mà không cần người dùng phải làm gì.

CSRF là gì?

CSRF hoạt động ra sao?

Để hiểu rõ hơn về CSRF, trước hết bạn cần biết rằng các ứng dụng sử dụng session để theo dõi một khi người dùng đã đăng nhập. Một session thường được xác định bằng một cookie mà trình duyệt sẽ tự động gửi cùng với mỗi yêu cầu gửi đến server.

Lúc này, CSRF sẽ hoạt động khi người dùng bị dẫn dắt hoặc lừa đến một trang web hay ứng dụng nào đó bởi hacker, lúc này kẻ tấn công có thể tận dụng chính cookie của người dùng để thực hiện hành động thay mặt họ. Khi hành động giả mạo được gửi từ của hacker, vì cookie và session không có gì khác nên server mặc định là đều từ một người dùng.

> Tìm hiểu thêm về các thuật ngữ cookie, session và cách chúng hoạt động tại:Session là gì? Cách phân biệt giữa session và cookie

Ví dụ về CSRF

Giả sử bạn đang đăng nhập vào trang web ngân hàng của mình và muốn chuyển tiền. Khi bạn đăng nhập, session của bạn được lưu trong cookie. Sau đó, bạn truy cập một trang web khác và trang này chứa một đoạn mã JavaScript giả mạo gửi yêu cầu chuyển tiền từ tài khoản của bạn đến tài khoản hacker. Vì bạn vẫn đang có phiên làm việc mở với ngân hàng, trình duyệt sẽ tự động gửi cookie kèm theo yêu cầu đó. Server của ngân hàng không thể phân biệt được yêu cầu này từ một yêu cầu hợp pháp của bạn và hành động hack chuyển tiền sẽ diễn ra mà bạn không hay biết.

CSRF hoạt động ra sao?

Cách ngăn chặn tấn công CSRF

Mặc dù tấn công CSRF là một mối nguy hiểm nghiêm trọng, nhưng nó hoàn toàn có thể phòng ngừa được nếu biết áp dụng các biện pháp bảo mật thích hợp. Dưới đây là một số phương pháp hiệu quả giúp ngăn chặn tấn công CSRF.

Phòng chống từ phía User

Mặc dù việc bảo vệ khỏi tấn công CSRF chủ yếu phải được thực hiện từ phía server, nhưng người dùng cũng có thể góp phần quan trọng trong việc giảm thiểu nguy cơ bị tấn công. Dưới đây là một số hành động mà người dùng có thể thực hiện để bảo vệ chính mình khỏi các cuộc tấn công CSRF:

  • Hạn chế nhấp vào các liên kết hoặc tải về tập tin từ những trang web không rõ nguồn gốc hoặc không đáng tin cậy. 
  • Người dùng nên đảm bảo rằng trình duyệt của mình luôn ở phiên bản mới nhất, đồng thời cập nhật các plugin và tiện ích mở rộng (extensions) để giảm thiểu các lỗ hổng bảo mật.
  • Sử dụng phần mềm bảo mật (anti-virus, anti-malware) giúp giảm thiểu khả năng bị tấn công thông qua các trang web lừa đảo.
  • Tránh đăng nhập vào nhiều tài khoản trực tuyến và giữ phiên làm việc (session) mở trên nhiều ứng dụng hoặc trang web cùng lúc.
  • Hạn chế sử dụng các mạng wifi công cộng.
  • Bật xác thực hai yếu tố (2FA) làm giảm khả năng kẻ tấn công có thể thực hiện các hành động mà không có sự đồng ý của người dùng.

Phòng chống từ phía User

Phòng chống từ phía Server

Từ phía server, có một số cách chủ yếu để phòng chống CSRF, bao gồm việc sử dụng csrf token, captcha và một số chiến lược bảo mật khác.

  • Sử dụng CAPTCHA: CAPTCHA sẽ giúp xác minh rằng yêu cầu đến từ người dùng thực hay không, từ đó tăng cường khả năng bảo vệ khi kết hợp với các phương thức khác.
  • Sử dụng CSRF Token: Server sẽ tạo và kiểm tra CSRF token duy nhất cho mỗi yêu cầu để đảm bảo tính hợp lệ và ngăn chặn yêu cầu giả mạo.
  • Sử dụng cookie riêng cho Admin: Tách cookie cho tài khoản quản trị và đặt thuộc tính bảo mật giúp bảo vệ các tài khoản có quyền cao hơn.
  • Thường xuyên kiểm tra IP: Kiểm tra IP trong suốt phiên làm việc để phát hiện các thay đổi bất thường, ngăn ngừa tấn công CSRF hiệu quả hơn.

Phòng chống từ phía Server

XSS và CSRF có mối liên hệ gì?

XSS và CSRF đều là hai loại tấn công mạng phổ biến. Mặc dù chúng khác nhau về cơ chế hoạt động nhưng cả hai có mối liên hệ với nhau qua việc khai thác lỗ hổng bảo mật để thao túng hoặc lợi dụng các thông tin nhạy cảm của người dùng trên một trang web.

XSS và CSRF có thể bổ trợ và tăng cường sức mạnh cho nhau trong các cuộc tấn công phức tạp. Một kẻ tấn công có thể sử dụng XSS để thu thập token CSRF của người dùng, hoặc chèn mã nhằm thực hiện các yêu cầu giả mạo từ phía trình duyệt, giống như CSRF. Khi XSS khai thác thành công, kẻ tấn công có thể lấy được thông tin người dùng hoặc thực hiện hành vi tương tự như CSRF mà không cần người dùng phải nhấp vào liên kết nào.

Tấn công CSRF là một trong những mối nguy hiểm phổ biến trong phát triển ứng dụng web. Tuy nhiên, với các biện pháp phòng ngừa thích hợp từ phía người dùng và server, bạn hoàn toàn có thể bảo vệ ứng dụng khỏi loại tấn công này. Qua bài viết này, LPTech hy vọng rằng bạn đã hiểu rõ về CSRF và biết cách phòng chống mối nguy hiểm này hiệu quả nhé!

Liên hệ tư vấn - LPTech

Thông tin liên hệ

Nếu bạn có thắc mắc gì, có thể gửi yêu cầu cho chúng tôi, và chúng tôi sẽ liên lạc lại với bạn sớm nhất có thể .

Công ty TNHH TMĐT Công nghệ LP

Giấy phép kinh doanh số 0315561312/GP bởi Sở Kế Hoạch và Đầu Tư TP. Hồ Chí Minh.

Văn phòng: Lầu 4, Toà nhà Lê Trí, 164 Phan Văn Trị, Phường 12,Quận Bình Thạnh, HCMC

Hotline: 0338 586 864

Mail: sales@lptech.asia

Zalo OA:LP Tech Zalo Official

Zalo Sales:033 85 86 86 64 (Sales)


Bài viết cùng chuyên mục

Pentest là gì? Tầm quan trọng của kiểm thử xâm nhập

Pentest là gì? Tầm quan trọng của kiểm thử xâm nhập

Tìm hiểu về phương pháp kiểm thử xâm nhập - Pentest, một giải pháp bảo mật thiết yếu cho doanh nghiệp trong thời đại số hóa.

NAT là gì? Phân loại NAT theo chức năng và cách sử dụng

NAT là gì? Phân loại NAT theo chức năng và cách...

NAT là một kỹ thuật mạng dùng để chuyển đổi địa chỉ IP của một gói data khi nó đi qua một thiết bị mạng như router hoặc tường lửa. Các...

Tấn công brute-force là gì? Cách phòng chống tấn công vét cạn

Tấn công brute-force là gì? Cách phòng chống tấn...

Brute force là một hình thức tấn công mà các hacker thường sử dụng. Chúng thực hiện bằng các phần mềm tự động để thử mật khẩu tài khoản...

XSS là gì? Cách truy vết và phòng chống tấn công XSS hiệu quả

XSS là gì? Cách truy vết và phòng chống tấn công...

XSS, viết tắt của cụm từ Cross Site Scripting, là một lỗ hổng trong bảo mật mà các hacker sẽ sử dụng để cài đặt các phần mềm độc hại vào...

Trojan là gì? Cách nhận biết và phòng chống virus trojan xâm nhập

Trojan là gì? Cách nhận biết và phòng chống virus...

Trojan là gì? Đây là một loại virus độc hại được tạo ra để xâm nhập máy tính trái phép. Một khi đã xâm nhập vào, chúng sẽ phá hoại, làm...

Phishing là gì? Cách phòng chống lừa đảo bằng hình thức giả mạo

Phishing là gì? Cách phòng chống lừa đảo bằng...

Phishing là một hình thức lừa đảo, giả mạo các tổ chức uy tín, người quen của nạn nhân để đánh cắp thông tin cá nhân như mật khẩu tài...

Sứ mệnh của LPTech ?

LPTech luôn đặt mình vào khách hàng để hiểu được bạn đang gặp khó khăn gì? Các doanh nghiệp hiện nay đang gặp khó khăn về việc quản lý vận hành website của mình. Chưa tìm được đối tác ưng ý và an toàn để giao trọn trọng trách quản lý website cho của bạn.

Thiết kế website nhưng lại không thể tăng thu nhập cũng như chưa có đối tác làm Dịch vụ SEO uy tín tin cậy. Chúng tôi hiểu được điều đó nên dành cả tâm huyết của mình để có thể hỗ trợ các doanh nghiệp một cách tốt nhất.