美文网首页asp.net mvc
ValidateAntiForgeryToken意义

ValidateAntiForgeryToken意义

作者: 落地成佛 | 来源:发表于2018-07-09 09:51 被阅读22次

一.CSRF是什么?

CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。

二.CSRF可以做什么?

你这可以这么理解CSRF攻击:攻击者盗用了你的身份,以你的名义发送恶意请求。CSRF能够做的事情包括:以你名义发送邮件,发消息,盗取你的账号,甚至于购买商品,虚拟货币转账......造成的问题包括:个人隐私泄露以及财产安全。

三.CSRF漏洞现状

CSRF这种攻击方式在2000年已经被国外的安全人员提出,但在国内,直到06年才开始被关注,08年,国内外的多个大型社区和交互网站分别爆出CSRF漏洞,如:NYTimes.com(纽约时报)、Metafilter(一个大型的BLOG网站),YouTube和百度HI......而现在,互联网上的许多站点仍对此毫无防备,以至于安全业界称CSRF为“沉睡的巨人”。

四.CSRF的原理

[图片上传失败...(image-b46df3-1531101049928)]

从上图可以看出,要完成一次CSRF攻击,受害者必须依次完成两个步骤:

1.登录受信任网站A,并在本地生成Cookie。

2.在不登出A的情况下,访问危险网站B。

看到这里,你也许会说:“如果我不满足以上两个条件中的一个,我就不会受到CSRF的攻击”。是的,确实如此,但你不能保证以下情况不会发生:

1.你不能保证你登录了一个网站后,不再打开一个tab页面并访问另外的网站。

2.你不能保证你关闭浏览器了后,你本地的Cookie立刻过期,你上次的会话已经结束。(事实上,关闭浏览器不能结束一个会话,但大多数人都会错误的认为关闭浏览器就等于退出登录/结束会话了......)

3.上图中所谓的攻击网站,可能是一个存在其他漏洞的可信任的经常被人访问的网站。

具体步骤:

1、在Html表单里面使用了@Html.AntiForgeryToken()就可以阻止CSRF攻击。

2、相应的我们要在Controller中也要加入[ValidateAntiForgeryToken]过滤特性。该特性表示检测服务器请求是否被篡改。注意:该特性只能用于post请求,get请求无效。

3、至于JS,我们的项目中引用的是<script src="@Url.Content("~/Content/js/jqueryToken-1.4.2.js")" type="text/javascript"></script>

在JS时要使用: .ajaxAntiForgery才行, 如:.ajaxAntiForgery({
type: "post",
data: { GroupName: ("#GroupName").val(), GroupPhones:("#GroupPhones").val() },
dataType: "json",
url: "/Event/Mass/AddGroup",
success: function (data) {
if (data) {

                alert("添加成功 ");
                $.unblockUI();
            }
            else {
                alert("添加失败 ");
            }
     }

})

注:对数据进行增删改时要防止csrf攻击!

相关文章

  • ValidateAntiForgeryToken意义

    一.CSRF是什么? CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也...

  • Asp.net core ValidateAntiForgery

    [ValidateAntiForgeryToken]标记:可以防止仿造请求攻击。页面上使用 Form Tag He...

  • 意义的意义

    把一根根香烟树立排列起来 可以密集林立也可以高耸入云 当良知的火花在醒悟中闪现 我看到太多愚昧的灵魂在烟火上方的呻...

  • 意义的意义

    2018好像不是很适合外出。每次出去两天回来时都会发生一些事打乱我所有的平静。 昨天一天遭受了身体和心理的双重磨难...

  • “意义”的意义

    【学习记录0421】day21 王子姐姐 一、阅读收获: 001 给事情赋予重大意义 往往很多时候,去做一些需要“...

  • 意义的意义

    貌似最近两年,工作都没有很大的进展。 换了3份,但是都没有走进内心。 完成好每天的工作,但是填不满内心的空虚。 这...

  • 意义的“意义”

    记忆中曾有一段时间,我一直想知道:生活的意义是什么?人们拼命追求的一切到头来有什么意义?人活着的意义又是什么...

  • 意义的意义

    意义是因为你我生活中里的残缺而呈现的,这份缺憾,不断的通过意义的方式想象中得以延续。他本来的面目就好像一个被截肢的...

  • 意义与“意义”

    人们在说到“意义”时,似乎有两种用法。比如,历史书上写波斯战争的意义,有一条是,“促进了东西方文化的交流”。打个仗...

  • 意义的意义

    1 人生,寄蜉蝣于天地,渺沧海之一粟。 在天地中毫无确定性,在沧海内一切未知。 在不确定之下,人的眼光极其短视,关...

网友评论

    本文标题:ValidateAntiForgeryToken意义

    本文链接:https://www.haomeiwen.com/subject/dorzuftx.html