• 15
  • 15
分享
  • 工具升级:安全测试流程优化了解一下!——软件测试圈
  • 曼倩诙谐 2021-09-23 09:27:52 字数 816 阅读 994 收藏 15

  近年来,随着国际形势和网络空间环境日趋复杂,各方面对网络安全重视程度日益提升,网络安全也已纳入了国家战略。在此背景下,系统的安全测试与防护就显得越来越重要,项目组在进行基于owasp zap工具进行安全扫描过程中,对工具的使用及扫描流程进行了深入分析,对常规扫描方式进行了优化。

  zap提供了强大的路径爬虫及漏洞扫描功能,常规方式下,可以通过配置代理来录制前台页面,点击系统页面功能后抓取网站路径,再通过“爬行”、“强制浏览目录”等功能进行路径的分析与扩展,最后通过“主动扫描”功能进行漏洞扫描,生成漏扫报告。但这种方式抓取到的网站路径并不能保证是系统的全量路径,也就可能会导致扫描结果不详尽。

  我们的优化思路是利用工具脚本将系统全量路径整理出来,并批量导入到zap工具当中,再进行漏扫分析,这种方式得到的扫描结果就更全面。下面描述常见的.net框架(C#语言)和springboot框架(java)语言解决方案。

  1..net框架

  .net框架下,项目工程的物理路径即可直接转换为网站路径,通过编写python脚本,遍历工程内的目录文件,可直接转换为网站路径,基于该路径,zap可以在扫描过程中遍历系统全量路径及方法。

1-1.png

图1-1:路径转换python代码

1-2.png

图1-2:zap批量导入url功能

  2.springboot框架

  Springboot框架安全性更优,只对外提供API服务接口,无法直接访问物理路径,人工整理系统API接口繁琐且容易出纰漏。在此条件下,可以利用swagger插件将工程的全量API接口导出(json格式),再批量导入到zap工具中。

1-3.png

图2-1 swagger接口脚本下载位置

1-4.png

图2-2:zap批量导入api接口功能

  导入后的接口并不包含登陆信息,可以在zap设置界面统一添加http头进行token等验证信息的配置,以便工具进行后续的自动扫描。



作者:谭明   

来源:51Testing软件测试网原创

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

热门文章

    最新讲堂

      • 推荐阅读
      • 换一换
          •   一、Dynatrace简介  随着云技术应用的不断成熟,应用系统架构变得越来复杂,性能检测也愈发困难。单纯的检测交易响应时间、吞吐量和成功率不足以帮助开发人员快速定位到问题所在。所以,我们需要一种能够将业务流程与代码关联起来的测试方案,使每个流程的耗时可视化,使问题的定位更加简洁高效。  所以我们在性能测试工作中引入了Dynatrace。这个工具将人工智能技术引入监测过程,为管理微服务和以云计算为中心的应用的运营复杂性提供了全新的方式。用户安装一个代理,对每一个组件进行插桩、设定基线,并掌握用户环境的正常性能状况,代码级的深入分析能力能够分析层的技术依赖关系、识别环境异常,并找到性能问题的...
            14 14 3086
            分享
          • 在谷歌搜索引擎中输入"如何选择一种测试工具?" ,你会发现答案从开源软件到各种基于不同假设的最佳繁衍物,五花八门。一类结果是假定在理想状态下你需要一个不需要编码的、基于GUI界面的测试工具,而另一类结果宣称是可以编码的自动化测试,第三类则是更加感兴趣于测试工具中的例子和文档是否可被执行。Liquidity Services公司的质量和测试主管Connor Roberts曾说过,有时公司引入或更换测试工具,仅仅是因为新上任的经理在上一家公司有此工具的使用经验,或者为了节省开支,使得预算单上的数据看起来更漂亮。Connor Roberts说:最终每天都使用工具的团队发现自己和以...
            1 1 2904
            分享
          •     在项目开发流程的各个阶段,都需要测试人员参与,那么测试人员在每个阶段中都需要做什么呢?测试人员要怎么样参与项目的各阶段评审,才能有效的指导自己在后续的测试工作呢?跟大家分享一下我在项目中的一些经验和理解。    在项目的各阶段中,与测试相关的项目阶段可以分为:需求设计阶段/开发设计阶段/测试用例设计阶段/测试用例执行阶段,在需求设计和开发设计阶段,测试人员是参与角色,而测试用例设计和测试执行阶段,测试人员则是主导角色,下面依次讲解各阶段过程中,测试人员的关注重点:1、需求设计阶段:测试人员参加需求分析,需要了解到该需求对于用户...
            2 2 4243
            分享
          • 大家好,我是阿常,本文是2022年11月6日测试职业成长+面试专项辅导社群内部直播分享的笔记。今天社群的CKL老师在晚上19:00进行了一场内部直播分享,直播时长1个半小时。主题是“作为测试面试官,我是如何筛选候选人的——面向中高级测试岗”。CKL:做过产品、研发、测试,目前是一位测试架构师 & 敏捷教练。面试前的思考你是谁,我要谁测试工程师按等级可划分为:初级、中级、高级、资深、专家。初级主要面向校招,中高级主要面向社招,而资深和专家主要是通过内部晋升+行业互推。我在面试前会问自己这三个问题:1.  岗位核心要求是什么——比如“能独立开展简单的性能测试”2.  候...
            0 0 1168
            分享
          • 需求:读取本地存放图片的地址,实现随机选取图片转化为base64图片流问题出现的环境背景:工作中模型接口的传入为图片base64,在使用jmeter进行相关接口测试时需要有该功能函数。开发步骤:1、创建java项目,新建的包名称必须时org.apache.jmeter.functions,在该包下创建名为ImageToBase64的class2、导入jmeter安装目录下的lib\ext下的ApacheJMeter_functions.jar包3、继承AbstractFunction类,并重写其中的方法package org.apache.jmeter.functions; imp...
            2 0 2715
            分享
      • 51testing软件测试圈微信