.Net CSRF 跨站点请求伪造漏洞

问题背景:由于公司需要整改的老系统的漏洞检查,而系统使用的是.Net 4.6.1的框架,无法使用最新的.Net Core官网的文档解决。

解决方法:网上查了很多资料,有用 Referer 过滤器全局过滤请求头,也有用 http请求都带token中验证。最先用了Referer全局过滤伪造的跨域请求域名,发现还是无法通过CSRF检测。最后使用了服务端返回Token给到form前端,后端对Post请求进行校验,发现可以解决问题。

前端代码:

html 复制代码
@using (Html.BeginForm("Index", "Search", FormMethod.Post, new { id = "SearchForm", name = "SearchForm" }))
{
    @Html.AntiForgeryToken()
}

后端代码:

cs 复制代码
public class SearchController   
{     
    [Post]
    [ValidateAntiForgeryToken]
    public ActionResult Index()
    {
        return view();
    }
}
相关推荐
码农君莫笑20 分钟前
使用blazor开发信息管理系统的应用场景
数据库·信息可视化·c#·.net·visual studio
可喜~可乐3 小时前
C# WPF开发
microsoft·c#·wpf
独行soc3 小时前
#渗透测试#漏洞挖掘#红蓝攻防#护网#sql注入介绍11基于XML的SQL注入(XML-Based SQL Injection)
数据库·安全·web安全·漏洞挖掘·sql注入·hw·xml注入
风间琉璃""4 小时前
bugkctf 渗透测试1超详细版
数据库·web安全·网络安全·渗透测试·内网·安全工具
儒道易行5 小时前
【DSVW】攻防实战全记录
web安全·网络安全
安全方案7 小时前
如何增强网络安全意识?(附培训PPT资料)
网络·安全·web安全
666和7777 小时前
C#的单元测试
开发语言·单元测试·c#
索然无味io7 小时前
跨站请求伪造之基本介绍
前端·笔记·学习·web安全·网络安全·php
小码编匠8 小时前
WPF 星空效果:创建逼真的宇宙背景
后端·c#·.net