首页 > 解决方案 > MVC 在使用 API 调用时允许 XSS 攻击

问题描述

我正在制作一个 ASP.NET MVC Web 应用程序,我将使用带有以下内容的 API 调用向它发送一些数据。

{
    "content": "<script>alert('hallo');</script>",
    "title": "<script>alert('hallo');</script>"
}

我怎样才能防止这被服务器接受?我知道默认情况下 MVC 中会阻止 XSS,但它似乎不起作用。这是我在服务器端的代码:

public class DefaultController : Controller
{
    [HttpPost]
    public JsonResult Create()
    {
        // ...skipped
    }
}

我错过了什么吗?

标签: c#asp.net-mvcxss

解决方案


没关系。您的服务器应该接受它。

通常的模式是:

  • 接受来自客户的东西,因为它们被发送
  • 为您发送回客户端的所有内容进行 html 实体编码

推荐阅读