CSRF
TIL
633
CSRF
4
Security
32
White

Quan viết ngày 15/03/2017

Cross-Site Request Forgery explained

A quick example

Consider the below screen of an online bank. End users use this form to transfer money after success authentication.
alt text

Transfer money
<form action="http://bank-site.com/Transfer" method=post>
Enter Amount <input name="amount" value="100.23" /> 
Enter Account number <input name="account" value="1001" /> 
<input type=submit value="transfer money" /> 
</form>

Below is a forged site created by an attacker which looks a game site from outside, but internally it hits the bank site for money transfer.
alt text

The internal HTML of the forged site has those hidden fields which have the account number and amount to do money transfer, it POST data to the same url above.

Win 1000000 US$
<form action="http://bank-site.com/Transfer" method=post>
<input type=hidden name="amount" value="10000" /> 
<input type=hidden name="account" value="3002" /> 
<input type=submit value="Play the ultimate game" /> 
</form>

Now let’s say the user has logged into the bank-site and the attacker sent this forged game link to his email. The end-user thinks that it’s a game site, clicks on the “Play the Ultimate Game” button and internally the malicious code does the money transfer process.
alt text

How to prevent

  • Check the Referer HTTP header and verify that the request originated from a page internal to your web application.
  • CSRF token:
    • Server generates a one-time token, adds it to hidden field of form.
    • When user sends request, token is submited with form. This token is validated on the server.

source

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Quan

5 bài viết.
2 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
Cùng một tác giả
White
1 0
Clojure supports flexible concurrency models for real world complexity: (Link): builtin support. (Link): similar to Golang concurrency model, w...
Quan viết hơn 1 năm trước
1 0
Bài viết liên quan
White
37 11
Có 1 kiểu tấn công vào website mà chúng ta không thể nào chống được, dù có làm thế nào đi nữa: DDOS. Đây cũng là một từ rất hay dc nhắc đến và rất...
quocnguyen viết gần 3 năm trước
37 11
White
20 4
(Ảnh) Nếu máy tính của bạn đã bị lây nhiễm, mã độc có thể lây lan tới trang web của bạn thông qua trình soạn thảo văn bản và (Link). Dùng các mật ...
Juno_okyo viết hơn 1 năm trước
20 4
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
5 bài viết.
2 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!