asp.net – 会话固定 – 表单身份验证
|
我正在使用表单身份验证是ASP.NET.我正在为一个学校项目进行渗透测试.我正在使用LENS -ASP.NET PENETRATING TESTING TOOL.在结果中它告诉我,我的应用程序可能容易受到会话固定的影响.有谁知道如何减轻这种影响? 谢谢 解决方法会话固定是一个人固定另一个人的会话标识符(SID)的攻击.攻击开始于攻击者访问网站并建立有效会话,当应用程序发送包含会话ID的cookie时,攻击者已经修复或锁定了已知的良好会话.然后,攻击者会欺骗受害者使用此会话ID.此时,攻击者和受害者共享相同的会话ID.现在,任何时候存储在此固定会话中的信息用于为受害者做出决策或仅显示受害者应该看到的信息,攻击者可能会使用和查看这些信息!你可以read more here. 唯一的解决方法是ASP.NET在任何成功的身份验证后发出新的会话ID,这样一旦受害者登录,攻击者就无法访问会话.需要记住的另一点是:在用户登录之前切勿提供会话. 请记住,在ASP.net Session.Abandon()不足以完成此任务,它不会从用户的浏览器中删除会话ID cookie,因此在会话被放弃后,对同一应用程序的任何新请求都将使用相同的会话ID和新的会话状态实例! As Microsoft states here.您需要放弃会话并清除会话ID cookie: Session.Abandon();
Response.Cookies.Add(new HttpCookie("ASP.NET_SessionId",""));
在web.config文件中更改表单身份验证cookie名称也是一种很好的做法: <authentication mode="Forms"> <forms name=".CookieName" loginUrl="LoginPage.aspx" /> </authentication> 这是Session Attacks and ASP.NET上的一篇好文章以及如何解决它. (编辑:安卓应用网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- asp.net-mvc – Jasmine在一个单独的测试项目中
- ASP.NET MVC 3 – Ajax.BeginForm vs jQuery Form Plugin
- asp.net-mvc – 仅在MVC4 BundleConfig中缩小脚本
- asp.net-mvc – 更新到MVC 5后,iframe不再有效
- asp.net – 在项目之间共享aspx页面
- ASP.Net AJAX多页面加载功能可能吗?
- jQuery validate 根据 asp.net MVC的验证提取简单快捷的验证
- asp.net-mvc-3 – ASP.NET MVC – 导航当前页面突出显示
- asp.net-mvc – 使用WCF/OData作为访问层而不是直接使用EF/
- asp.net-mvc – 将返回文件的长时间运行进程
- asp.net-mvc – 我如何可以渲染局部视图在asp.ne
- ASP.NET Web应用程序(MVC)部署自动化和Subversio
- asp.net-mvc-4 – 获取上下文是不可构建的.添加一
- asp.net – 按钮属性: – commandName和Command
- 从app_data中删除文件夹时如何防止asp.net重新编
- 大文件上传到asp.net MVC
- asp.net-mvc – 如何修复错误名称空间’System’
- asp.net – 可接受的安全性:使用Paramatised SQ
- asp.net-mvc-3 – 具有多个强类型部分视图的MVC
- asp.net – ‘Owin.IAppBuilder’不包含’MapSig
