• 0
  • 0
分享
  • 安全测试-session会话固定测试——软件测试圈
  • 曼倩诙谐 2023-08-21 17:01:43 字数 763 阅读 487 收藏 0

  1.1测试原理和方法

  Session 是应用系统对浏览器客户端身份认证的属性标识,在用户退出应用系统时,应将客户端Session认证属性标识清空。如果未能清空客户端 Session 标识,在下次登录系统时,系统会重复利用该Session标识进行认证会话。攻击者可利用该漏洞生成固定Session会话,并诱骗用户利用攻击者生成的固定会话进行系统登录,从而导致用户会话认证被窃取。

  1.2测试过程

  在注销退出系统时,对当前浏览器授权 SessionID 值进行记录。再次登录系统,将本次授权 SessionID 值与上次进行比对校验。判断服务器是否使用与上次相同的 SessionID 值进行授权认证,若使用相同 SessionID 值则存在固定会话风险。测试流程如图 1-1 所示。

1-1.jpg

  步骤一:在已登录授权认证的页面中单击“退出系统”,如图 1-2 所示。

-2.jpg

  步骤二:使用 Burp Suite 工具对本次退出系统的请求数据进行截取,对本次授权的 SessionID 进行记录备份,如图 1-3 所示。

1-3.jpg

  步骤三:退出系统后,再次重新登录系统,如图 1-4 所示。

1-4.jpg

  步骤四:使用 Burp Suite 工具对本次登录授权请求数据进行截取,并将本次登录与上次登录的授权 SessionID 值进行比较,判断是否相同,如图 1-5 所示。

1-5.jpg

  1.3.修复建议

  在客户端登录系统时,应首先判断客户端是否提交浏览器的留存 Session 认证会话属 性标识,客户端提交此信息至服务器时,应及时销毁浏览器留存的 Session 认证会话,并要求客户端浏览器重新生成 Session认证会话属性标识。


作者:小杰哥001    

来源:http://www.51testing.com/html/33/n-7792933.html

  • 【留下美好印记】
    赞赏支持
登录 后发表评论
+ 关注

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   TikTok正在接受英国媒体监管机构的调查,原因是这款中资视频应用提供了有关其家长控制的"不准确"信息。英国通信管理局周四表示,它有"合理的理由相信"字节跳动旗下的 TikTok 违反了其法律责任,并表示可能会采取强制措施。  调查消息传出后,TikTok 在发言中指责是技术问题导致其提供的数据不准确。该公司表示已通知监管机构,并正在迅速纠正这一问题。该公司表示,计划尽快提供准确的数据。  通信管理局曾要求 TikTok 提供信息,以了解和监控该病毒视频平台的家长控制是如何工作的。监管机构周四表示,"现有证据表明,所提供的信息......可...
            0 0 439
            分享
          •   业内对软件故障频发问题进行大量研究表明:主要原因是在软件开发过程中质量保证不佳。执行严格的质量保障测试主要目的是防范发布质量差的产品,因为漏掉的小缺陷可能会导致公司经济上巨额的财务损失。一个很好的例子是Flud,它是iPad,iPhone,Android和Windows Phone的社交新闻阅读器应用程序,被称为“第一个真正的社交新闻阅读器”。但是由于软件质量不佳,频频出现启动失败问题。Flud团队的重视开发忽略测试,当产品最终发布时,它不可避免会出现缺陷。即使一切都已解决,但不良的声誉和糟糕的用户体验仍然阻碍了它的成功。因此,Flud公司倒闭了。  保障高质量软件的方法是实施有效的QA管...
            0 0 491
            分享
          • Cypress简介       自2004年Selenium诞生并伴随着WebDriver的发展,Selenium和Webdriver的组合成为前端自动化测试不二之选,但近些年前端技术的发展显然远远超出了Selenium的演进速度,尤其是前端页面演化成了前端应用程序开发,实际上前端已经具备了后端的一切能力,而Selenium和Webdriver本身仍旧只能单纯的用在UI层,除非我们再引入其他的库处理后端请求和响应,那么产生的问题是:Selenium和Webdriver的组合在做自动化测试的时候,如果接口请求失败了,我们不知道前端的问题还是后端的问题&nb...
            12 12 3870
            分享
          •   测试用例格式包括十大特点  1)用例编号  2)测试项  3)测试标题  4)用例属性  5)重要级别:高中低  6)预置条件  7)测试输入  8)操作步骤  9)预期结果  10)实际结果  等价类  1,等价类定义  2,等价类划分  3,等价类划分规则  4,进行等价类用例设计  5,案例  边界值  1,边界值的三点  2,边界值应用场景  3,边界值方法应用步骤  判定表  1,定义  2,重要概念  3,判定表应用步骤  4,案例  因果图  1,输入与输入的关系  2,输入与输出的关系  3,案例  正交试验  1,因子和水平的定义  2,特点  3,设计流程  4,注意点...
            0 0 21
            分享
          •   一个Bug的生命周期是从创建开始到关闭结束,而Bug能否关闭就取决于回归测试的结果,测试人员可能很多都对Bug灵敏度有较高要求,但是对于回归测试的把控或质量掌握的程度却比较模糊。而关于回归测试的范围、回归测试的开展正是本文讨论的重点。  Bug回归的重要性  回归测试是软件测试中不可忽视的一部分,回归测试是对问题修改后,重新进行测试并确认修改没有引入新错误,或者导致其他程序出现错误。  作为软件生命周期的一部分,回归测试在整个软件测试过程中占据着相当大的分量,在敏捷测试的每个阶段都要进行多次回归测试。  开发人员修改的局部问题时,可能已经处理了表面症状,所以主要测试其修改的页面和它的底层逻...
            3 3 787
            分享
      • 51testing软件测试圈微信