防止ApplicationCookie在OWIN中进行cookie重播攻击

问题描述

我正在尝试防止对使用OWIN身份验证的asp.Net MVC应用程序进行cookie重放攻击。我观察到的行为是-即使注销,我也可以使用Fiddler和以前有效的Cookie ApplicationCookie发送请求。这是Logout()

的代码
[HttpGet]
public ActionResult Logout()
{
    HttpContext.GetOwinContext().Authentication.SignOut(DefaultAuthenticationTypes.ApplicationCookie);
    return this.RedirectToAction("Login","Account");
}       

注销后,cookie .AspNet.ApplicationCookie(如下所示)将被删除,如浏览器中所示。

ASP.NET_SessionId=wsggy1z2l0pckp3s0cjsxit5
.AspNet.ApplicationCookie=A8FiqaHloXglEyuXzwobhunoXWkKLmMTMs_tLNvqc6XLjtav4HO_3UY7O6CjuIieJB-ITFbXlIhpH-OETMTjScI_-q07-SXAlk-f0kUjpf-r6q64BedP1kbcClt1CmVPlqT_qxmJjlWvvDoRk3CB1IHgdNe6rkjOkZfaKiYw1BYpqdLY-BM3u46aWkpMbUUArOhOOv8d6PhxiJqLr2fZ2VJffWzRHlRQR8rxkA0Z3rz10l9J0K9m3ubg8w```

即使我注销并执行了上述注销方法之后,我也可以使用Fiddler更改用户的首选项,只需重播登录时发送的相同请求即可。

[HttpPost]
public ActionResult Preferences(UserPreferencesViewModel preferences)
{
    User user = this.UserProcessor.Find(preferences.UserId);
    user.CultureId = preferences.CultureId;
    this.UserProcessor.UpdatePreferences(user);
    CultureUtility.SetCurrentCulture(user.CultureId);
    return this.RedirectToAction("Index","Home");

}

如何处理这种攻击?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...