• 0
  • 0
分享
  • 安全测试-session会话固定测试——软件测试圈
  • 恬恬圈 2023-05-23 14:03:54 字数 763 阅读 1398 收藏 0

  1.1测试原理和方法

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

  1.2测试过程

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

1-1.jpg

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

1-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

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          • 一、adb环境部署准备下载jdk及安卓adt1、jdk下载地址(https://www.oracle.com/java/technologies/javase-downloads.html)配置环境变量① 打开配置环境入口右键此电脑-高级系统设置-环境变量② 配置JAVA_HOME在系统变量中新增JAVA_HOME,变量值中输入jdk安装路径(C:\Program Files\Java\jdk-15.0.1 版本号及路径可能不一致,不能直接复制)③ 编辑Path在系统变量Path中新加两条:%JAVA_HOME%\bin和%JAVA_HOME%\jre\bin(每条以英语分号隔开)④ 编辑CL...
            0 0 1272
            分享
          • 基于需求的设计RBT(Requirements-BasedTesting)是基于需求的测试方法,会使测试更加有效,因为它使测试专注于质量问题产生的根源,即需求。基于需求的测试是一种最根本的软件测试,重点关注以下两大关键问题:验证需求是否正确、完整、无二义性,并且逻辑一致;要从“黑盒”的角度,设计出充分并且必要的测试集,以保证设计和代码都能完全符合需求。等价类思想:把输入划分为若干个等价类,从每一个等价类当中选一个测试用例进行测试,如果这个测试用例测试通过,我们就说这个等价类测试通过。有效等价类:根据需求规格,有意义的数据集合。无效等价类:不符合需要所要求的数据集合。边界值针对输入和输出的边界进...
            0 0 1651
            分享
          • 51testing软件测试圈8月更文暴击已经结束啦,感谢各位的参与。本次更文活动的时间从2022年8月11日-2022年9月9日!合计参加本期更文活动的作者4名,合计更文47篇,详细更文情况和评审情况如表所下:序号作者名称更文篇数符合要求数优质文章活动规则首发文章数1Carl_奕然222218发布文章篇数≥2122王鑫21212发布文章篇数≥21183米橙果柠110发布文章篇数≥114九哥333发布文章篇数≥10获奖名单恭喜:(点击作者名字可查看其所有文章)Carl_奕然王鑫请获奖用户及时联系恬恬圈或甜甜圈领取奖励点击右侧可查看本期更文活动全部文章:“大佬养成计划”活动主题解锁8月更文暴击活动...
            1 1 4398
            分享
          • 功能测试最基本的测试,主要是测试软件的APP功能点、业务逻辑;关联性(主要是测试客户端PC的交互,客户端处理完后,保证PC端数据同步一致)。性能测试Cpu,占用不超过10%响应时间(包括APP启动和退出)满足258原则,2秒以内用户感觉很快,2-5秒感觉一般,5-8秒感觉很慢,但是能接受,8秒以上用户无法接受,选择离开,或者再次发送请求。耗电量,与cpu有关内存兼容性测试手机app需要重点关注的:不同操作系统:android、IOS不同手机厂商:华为,小米等不同手机屏幕分辨率与其他第三方APP的兼容安装卸载更新测试也是手机app比较特别的测试点:安装路径,手机还是sd卡上高低版本的覆盖安装内存...
            14 13 2471
            分享
          • 简介在测试中,为了度量产品质量,代码覆盖率被作为一种测试结果的评判依据,在Python代码中用来分析代码覆盖率的工具当属Coverage。代码覆盖率是由特定的测试套件覆盖被测源代码的程度来度量,Coverage是一种用于统计Python代码覆盖率的工具,通过它可以检测测试代码的有效性,即测试case对被测代码的覆盖率几何。Coverage支不仅持分支覆盖率统计,还可以生成HTML/XML报告。并且XML报告可以结合Jenkins和Sonar集成工具一起使用。Coverage官方文档:http://coverage.readthedocs.org/en/latest/安装Coverage作为Py...
            0 0 3598
            分享
      • 51testing软件测试圈微信