.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();
    }
}
相关推荐
bugcome_com10 小时前
bugcome —— 个人独立开发 6 年商业计划书
c#
сокол13 小时前
【网安-Web渗透测试-漏洞系列】逻辑漏洞(或越权漏洞)
web安全·php
Ha_To15 小时前
2026.2.4 DVWA, Sql-labs,Pikachu靶场搭建
安全·web安全
bugcome_com15 小时前
C# 中的封装与访问修饰符
c#
сокол16 小时前
【网安-Web渗透测试-漏洞系列】XXE漏洞
xml·web安全·php
游乐码17 小时前
c#成员属性
开发语言·c#
Never_Satisfied18 小时前
在c#中,如何删除字符串中的第x个字符
开发语言·c#
Never_Satisfied18 小时前
在c#中,缩放jpg文件的尺寸
算法·c#
Never_Satisfied18 小时前
在c#中,控件的事件执行耗时操作导致窗体无法及时处理绘制、鼠标点击
开发语言·c#
zls36536519 小时前
C# WPF canvas中绘制缺陷分布map并实现缩放
开发语言·c#·wpf