.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();
    }
}
相关推荐
火星papa5 小时前
C# 阻塞队列(BlockingCollection)
c#·queue·阻塞队列
OctShop大型商城源码10 小时前
.NET线上商城源码_C#商城源码_技术赋能下的电商新生态
开发语言·c#·.net·商城系统源码
hixiong12313 小时前
C#文件目录结构生成工具
开发语言·c#
万法若空13 小时前
Nmap 完全使用指南:从入门到精通
安全·web安全
晓梦林14 小时前
Loooower靶场学习笔记
笔记·学习·安全·web安全
txg66614 小时前
网络安全领域简报(2026年5月1日~5月8日)
网络·安全·web安全
滴滴答答哒15 小时前
# SqlSugar 差异日志功能实现
c#
顾温16 小时前
协程结束——实测
开发语言·unity·c#
唐青枫18 小时前
C#.NET YARP 详解:用 ASP.NET Core 打造高性能反向代理网关
c#·.net
2301_7807896618 小时前
DDOS防护的常见误区与解决方案
网络·安全·web安全·架构·ddos