前端点击劫持的原理:通过向我们的页面中添加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(); }
原文地址:https://www.cnblogs.com/vichin/p/12394031.html
时间: 2024-10-07 16:48:39