• 13
  • 14
分享
  • 还在人工测越权漏洞?快来自动扫描吧!——软件测试圈
  • 曼倩诙谐 2021-10-18 10:14:08 字数 1372 阅读 1096 收藏 14

  关于越权漏洞,大家都熟知水平越权、垂直越权,未授权访问,此处不再赘述概念了。对于越权类漏洞的测试,通用的测试方法,也都是人工通过代理抓包工具截获报文,然后尝试删除Cookie测试是否存在访问越权,或者篡改Uid、Uno之类的值测试是否存在业务逻辑越权等。这种人工检测越权类漏洞的方法,不仅工作量大,而且效率低,还容易产生遗漏。AppScan作为一个自动化的渗透测试工具,具备自动扫描越权漏洞的能力,可大大提高测试覆盖率和效率,减少人工成本。所以,快跟我一起挖掘AppScan的这项隐藏技能吧。

  这个功能的位置就在扫描配置-测试-特权升级,AppScan将越权叫做特权升级,表述略有不同,但是同一个意思。通过在AppScan中导入不同权限用户可访问的资源范围,AppScan就可以在测试过程中自动使用当前用户尝试去访问其他权限用户的资源,从而检测权限不足的用户是否可以访问到其他用户的资源范围。

  通过界面我们可以看到,AppScan扫描越权漏洞的两种方式:更高级的特权用户测试和非认证的用户测试。

1-1.png

  更高级的特权用户测试:导入一个更高级的特权用户的扫描文件,这个更高级的特权用户已经生成了扫描结果。扫描时,AppScan会使用当前较低级别的用户账号去尝试访问更高级别用户才可以访问到的链接。并通过扫描结果展示哪些访问成功了。

  非认证的用户测试:导入一个没有用户认证的情况下的扫描文件。然后,AppScan会使用当前认证运行扫描,并记录其访问的新链接,接着再注销,并在没有认证的情况下去尝试访问这些新链接,扫描结果会展示哪些访问成功了。

  有一个要点就是:在上述测试方式中进行比较的扫描必须具有相同扫描配置,或者等效探索数据。例如,如果被测网站在某个扫描中进行测试之前已经过手动探索,那么必须在与之进行比较的扫描中的测试阶段之前执行同一手动探索。

  接下来,我们通过一个实例来演示一下AppScan自动化扫描越权漏洞的过程。

  以Pikachu靶场的垂直越权漏洞为例,在这个靶场中有两个用户:admin和pikachu,可以理解为admin是管理员用户,pikachu是普通用户。

1-2.png

  首先,打开AppScan创建扫描,用admin用户登录,AppScan记录相关操作所产生的的请求响应,运行测试,将扫描文件保存为admin.scan。

  然后,再打开AppScan,创建新的扫描文件,使用pikachu用户登录,进行相关操作,AppScan会记录相应的请求响应。

  第三步,打开扫描配置-特权升级,单击1.png,选择刚刚保存的admin.scan文件,点击打开。并在下一步会弹出选择角色的窗口,录入角色为管理员,确定完成导入。

1-3.png

1-4.png

1-5.png

  第四步:关闭扫描配置页面后,在主页面上点击扫描-仅测试,将这个扫描文件保存为pikachu.scan。这时,AppScan就会自动开始扫描了。扫描完成后,查看扫描结果,报出了“使用特权不足用户的特权升级”漏洞。

1-6.png

  AppScan的越权漏洞自动化扫描功能,可以覆盖垂直越权、水平越权、未授权访问这三类越权漏洞。通过自动化的扫描,可以提高覆盖率和效率。当然,自动扫描的结果需要进行人工的确认以排除误报。



作者:刘沅斌   

来源:http://www.51testing.com/html/10/n-4479010.html

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   随着前后端分离、微服务等技术的普遍应用,接口测试在整个测试过程中扮演的角色也愈发重要,如何把接口测试做好就成了一个必须面对的问题。  俗话说,工欲善其事,必先利其器,对于接口测试来说,有一个趁手好用的接口测试工具就显得尤为关键。目前有各种各样的接口测试工具,但是在接口测试工具功能变得越来越大而全的同时,也就显得相对比较臃肿,那么是否存在一款小而轻又能满足接口测试需要的工具呢?  经过调研发现,Postcat在众多工具中脱颖而出,该工具在最近再次登上GitHub Trending,并且在2022 年被 Gitee(码云)评为 GVP(最有价值的开源项目)。  本文首先介绍了接口测试工具Pos...
            0 0 1724
            分享
          •   首先我们来看看什么是软件性能?  软件的性能是软件的一种非功能特性,它关注的不是软件是否能够完成特定的功能,而是在完成该功能时展示出来的及时性。 表明了软件系统对时间及时性及资源经济性的要求。对于一个软件系统,运行时执行速度越快、占用系统存储资源及其他资源越少,则软件性能越好。软件性能是衡量事情完成效果的一个重要因素。  再看看性能测试的定义?  狭义的软件性能测试指为验证软件性能指标、评估系统服务能力、推荐系统软硬件配置、完成系统性能优化等而开展的测试活动;  广义的软件性能测试指在测试过程中需要相关性能测试方法配合完成的系统测试活动,包括可靠性测试、可恢复性测试、稳定性测试、兼容性测试...
            0 0 1861
            分享
          • 授权1、微信授权:目的:获取union id,拿到用户数据,如昵称、性别、头像;触发:调起授权弹窗需用户主动触发;2、手机授权:目的:获取用户绑定微信的手机号码;触发:调起授权弹窗需用户主动触发;审核1、ICP社交等类型小程序,提交微信审核时,需要ICP证书,证书申办时间需要3个月,需尽早准备2、相关部门审核社交等类型小程序,第一次审核时,需提交相关部门审核,审核时间为7个工作日开发阶段1、第三方设置小程序若需要接第三方插件,如诸葛io时,需后台配置授权才可以使用;2、转发所有页面若需要转发,需要开发配置;分享后的卡片样式需准备:标题文案、配图,二次分享卡片文案需另外配置;3、深度页面通过分享...
            11 11 953
            分享
          •   千万别忽略这条消息,我怕你错过免费的课程。只要点击下方链接填写测试行业调查问卷,价值398元的测试课程就可带回家。链接:http://vote.51testing.com/  首先,如果你现在来面试。  企业中面试官评估你的能力,无论你是做什么岗位的,自动化,测试开发,性能,管理,第一个肯定是工作经验。  比如说1-3年,3-5年,5年以上。都是一个临界点,那面试官会从哪些方面去考量你呢?  第一个,需求分析能力  就是说大家对这个需求一定要非常熟悉,不仅仅是产品经理给到的需求,我们需要从这个需求它的商业背景,价值。  产品经理提出这个需求能给我们产品带来什么样的价值,  然后我们为什么要...
            0 0 1157
            分享
          •   一、十年测试感悟  恍惚间,已经进入测试岗位十年多的时间了,回顾过往,思绪良多,一路走来,或多或少的经历了一些坎坷,也遇到了不少的困难,也曾一时间四顾迷茫,在此,我结合了自己的一些心得,愿本篇文章,能让想进入测试行业的朋友们有一个方向,避免和我一样,独自闯荡江湖还没成为大侠,却已经走了不少弯路。  二、写给刚进入测试岗位的你  刚入测试行业,你会发现自身的期望与现实落差很大,随着时间迁移越来越迷茫,当时的我也是摸着石头过河,随着时代的飞速发展 ,技术的变更也越来越快,测试人员需要学的越来越多,在此给出几点建议。  三、勾画职业蓝图  明确中前期测试工程师本身的发展规划,在此建议大目标、小阶...
            0 0 1299
            分享
      • 51testing软件测试圈微信