且知勉]csrf攻击预防的办法(csrf攻击基本原理与处理诀窍)

提到CSRF不少小伙伴应该很清晰了,不太清楚也无所谓,大家下面来探讨一下。

跨站请求仿冒(英文:Cross-site request forgery),又被称为 one-click attack 或是 session riding,一般简称为 CSRF 或是 XSRF, 是一种挟制用户在目前已登录的Web应用程序流程上实行非本意操作的攻击方式。跟跨网址脚本制作(XSS)对比,XSS 利用的是用户对特定网址的认可,CSRF 利用的是网址对用户浏览器工具的认可。

未尽事宜来源于百科

那接下来大家详尽讨论一下跨站请求仿冒:

 


如何避免CSRF攻击,你用到过吗?

 

跨站请求攻击,简单来说,是攻击者通过一些方式方法出轨用户浏览器去浏览一个自己以前验证完的网址并运作一些实际操作(如发送邮件,发信息,乃至资产实际操作如转帐和购买东西)。因为电脑浏览器以前验证过,因此被浏览网站会以为是名副其实的用户实际操作而走运作。这利用了web中用户身份认证的一个系统漏洞:简单身份认证只有确保请求只想说某一用户浏览器,却无法保证请求本身就是用户自行发出。

了解 CSRF 攻击的最好方式是看一个实际的事例。

假定你的银行网站提供了一个表格,容许把资金从现阶段登陆的用户迁移到另一个银行帐户。比如,转帐报表很有可能具体如下:

 

action = "/transfer" >

name = "amount" />

name = "routingNumber" />

name = "account" />

<键入种类= “递交”

值= “传送” />

 

 

对应的 HTTP 请求很有可能具体如下:

传送 HTTP 请求

POST /传送 HTTP/1.1

服务器:bank.example.com

Cookie:JSESSIONID=randomid

内容类型:应用软件/x-www-form-urlencoded

额度=100.00&routingNumber=1234&account=9876

如今假定你对银行网站展开了身份认证,之后在不销户的情形下浏览一个邪恶的网址。该邪恶网站包括一个 HTML 网页页面,其文件格式如下所示

恶邪迁移方式

 

action = "https://bank.example.com/transfer" >

name = "amount"

value = "100.00" />

name = "routingNumber"

value = "evilsRoutingNumber" />

name = "account"

value = "evilsAccountNumber" />

value = "Win Money!" />

 

 

你喜爱盈利,因此你点一下提交按钮。在这个过程中,您不经意中往故意用户转移了 100 美金。产生这些问题的主要原因是,尽管垃圾网站没法看到您的 cookie,但与你银行的关联 cookie 仍会随着请求一起推送。

最糟的是,这全过程原本可以应用 JavaScript 完成自动化技术。这就意味着您乃至不用点击按键。除此之外,在浏览做为XSS 攻击受害人的诚信网站时,它还很容易引发。那我们怎样保护他们的用户免遭该类攻击呢?

那我们究竟有哪些方法能解决,或是防止这类CSRF攻击呢,热烈欢迎留有小伙伴们的看法

原创文章,作者:leping,如若转载,请注明出处:https://www.wxymghbl.com/hq-1431.html

(0)
上一篇 2022年9月18日 下午9:14
下一篇 2022年9月18日 下午11:05

相关推荐