gpt4 book ai didi

ASP.NET MVC 应用程序安全

转载 作者:行者123 更新时间:2023-12-04 22:25:27 25 4
gpt4 key购买 nike

今天我测试了我的 ASP.NET MVC Web 应用程序,我发现任何人都可以轻松提交我们网站的表单而无需访问我的网站?

例如:example.com/home/test

[HttpPost]
public ActionResult Test(string name)
{
return View("home");
}

<form id="myForm" method="post" action="example.com/home/test">
<input type="text" name="name" />
<input type="submit" />
</form>

如果其他网站制作此表格,当用户填写表格时,我的网站将受到影响。

我可以通过我的网站或其他方式检查用户提出的请求吗?

最佳答案

听起来您可能正在寻找一些跨站点请求伪造 (CSRF) 帮助。 ASP.NET MVC 有一个非常简单的工具来帮助解决这个问题:

如果您在提交的表单中包含:<%= Html.AntiForgeryToken() %>,那么您可以使用 [ValidateAntiForgeryToken] 属性标记您的操作方法,并且可以很好地阻止 CSRF 攻击。不要相信我的话,请查看 Steve Sanderson 的 [旧] 博客文章,它应该包含您需要的所有背景和信息。

http://blog.stevensanderson.com/2008/09/01/prevent-cross-site-request-forgery-csrf-using-aspnet-mvcs-antiforgerytoken-helper/

关于ASP.NET MVC 应用程序安全,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3436707/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com