码迷,mamicode.com
首页 > Web开发 > 详细

ASP.NET MVC 防止前端点击劫持

时间:2020-03-02 10:31:21      阅读:97      评论:0      收藏:0      [点我收藏+]

标签:也有   response   请求   mvc   server   head   ade   action   原理   

前端点击劫持的原理:通过向我们的页面中添加Iframe,并将Iframe设置成透明,在页面相应的地方设置一些操作引导,让用户在不知不觉中发送一些请求。

解决前端点击劫持的手段就是在服务器端的响应报文中增加X-Frame-Options配置。X-Frame-Options值有3种:

1、DENY:无论如何不在框架中显示。

2、SAMEORIGIN: 仅在同源域名下的框架中显示。

3、ALLOW-FROM uri:仅在指定域名下的框架中显示。

配置X-Frame-Options的手段也有多种:

1、在web.Config中添加配置

  <system.webServer>
  ...
<httpProtocol> <customHeaders> <add name="X-Frame-Options" value="SAMEORIGIN"/> </customHeaders> </httpProtocol>
  ... </system.webServer>

2、可以添加一个全局过滤器来配置

public class XframeOptions : ActionFilterAttribute
{
    public override void OnResultExecuting(System.Web.Mvc.ResultExecutingContext filterContext)
    {
        filterContext.HttpContext.Response.AddHeader("X-Frame-Options", "DENY");
    }
}

3、若是需要灵活配置,可以考虑在controller中添加配置

        public ActionResult Index()
        {
            if (Response.Headers["X-Frame-Options"] == null)
            {
                Response.AddHeader("X-Frame-Options", "SAMEORIGIN");
            }
            return View();
        }

 

ASP.NET MVC 防止前端点击劫持

标签:也有   response   请求   mvc   server   head   ade   action   原理   

原文地址:https://www.cnblogs.com/vichin/p/12394031.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!