文档章节

2019测试指南-web应用程序安全测试(二)通过应用程序映射执行路径

猪鼻子插葱
 猪鼻子插葱
发布于 03/04 09:58
字数 918
阅读 0
收藏 0

在开始安全测试之前,了解应用程序的结构至关重要。如果没有彻底了解应用程序的布局,那么它将被彻底测试是不合适的。

 

测试目标

映射目标应用程序并了解主要工作流程。

 

如何测试

在黑盒测试中,测试整个代码库非常困难。不仅因为测试人员没有通过应用程序的代码路径的视图,而且即使他们这样做,测试所有代码路径也会非常耗时。协调这一点的一种方法是记录发现和测试的代码路径。


有几种方法可以用于测试和测量代码覆盖率:

  • 路径 - 通过应用程序测试每个路径,该应用程序包括每个决策路径的组合和边界值分析测试。虽然这种方法提供了彻底性,但可测试路径的数量随着每个决策分支呈指数增长。
  • 数据流(或污点分析) - 通过外部交互(通常是用户)测试变量的分配。重点介绍在整个应用程序中映射数据的流程,转换和使用。
  • Race - 测试操作相同数据的应用程序的多个并发实例。


应该与应用程序所有者协商关于使用什么方法以及每种方法的使用程度的权衡。也可以采用更简单的方法,包括询问应用程序所有者他们特别关注的功能或代码部分以及如何访问这些代码段。


黑盒测试

为了向应用程序所有者演示代码覆盖率,测试人员可以从电子表格开始,并记录通过应用程序(手动或自动)发现的所有链接。然后,测试人员可以更仔细地查看应用程序中的决策点,并研究发现了多少重要的代码路径。然后应在电子表格中记录这些内容,其中包含所发现路径的URL,散文和屏幕截图说明。


灰/白盒测试

使用灰色和白色框测试方法,确保应用程序所有者有足够的代码覆盖率。由测试人员征求并提供给测试人员的信息将确保满足代码覆盖的最低要求。

 

自动蜘蛛

自动蜘蛛是一种用于自动发现特定网站上的新资源(URL)的工具。它首先是要访问的URL列表,称为种子,这取决于Spider的启动方式。虽然有很多Spidering工具,但以下示例使用Zed攻击代理(ZAP)

OWASPZAPSP.png


ZAP提供以下自动爬行功能,可根据测试仪的需求进行选择:

  • 蜘蛛网站 - 种子列表包含已为所选网站找到的所有现有URI。
  • Spider子树 - 种子列表包含已找到并存在于所选节点的子树中的所有现有URI。
  • Spider URL - 种子列表仅包含与所选节点对应的URI(在站点树中)。
  • Spider all in Scope - 种子列表包含用户选择为“In Scope”的所有URI。

© 著作权归作者所有

猪鼻子插葱
粉丝 1
博文 44
码字总数 172746
作品 0
崇明
高级程序员
私信 提问
2019测试指南-web应用程序安全测试(一)

什么是Web应用程序安全测试? 安全测试是通过有条不紊地验证和验证应用程序安全控制的有效性来评估计算机系统或网络的安全性的方法。Web应用程序安全性测试仅侧重于评估Web应用程序的安全性。...

猪鼻子插葱
03/04
54
0
2019测试指南-推导安全测试要求

获得安全测试要求 要获得成功的测试程序,必须知道测试目标是什么。这些目标由安全要求指定。本节详细讨论了如何通过从适用的标准和法规以及正面和负面的应用程序要求中获取安全测试的要求来...

猪鼻子插葱
03/04
12
0
2019测试指南-web应用程序安全测试(二)地图应用架构

互连和异构Web服务器基础架构的复杂性可包括数百个Web应用程序,并使配置管理和审查成为测试和部署每个应用程序的基本步骤。实际上,只需要一个漏洞就可以破坏整个基础架构的安全性,即使是一...

猪鼻子插葱
03/04
25
0
2019测试指南-测试&测试原理

什么是测试? 在Web应用程序的开发生命周期中,需要测试许多东西,但测试实际上意味着什么?Merriam-Webster Dictionary将测试描述为: 进行测试或证明。 进行测试。 根据测试分配站立或评估...

猪鼻子插葱
02/27
91
0
2019测试指南-安全测试集成在开发和测试工作流程中

开发工作流程中的安全测试 SDLC开发阶段的安全测试代表了开发人员第一次有机会确保他们开发的各个软件组件在与其他组件集成并内置到应用程序之前进行了安全测试。软件组件可能包含软件工件,...

猪鼻子插葱
03/04
24
0

没有更多内容

加载失败,请刷新页面

加载更多

前端技术之:Prisma Demo服务部署过程记录

安装前提条件: 1、已经安装了docker运行环境 2、以下命令执行记录发生在MackBook环境 3、已经安装了PostgreSQL(我使用的是11版本) 4、Node开发运行环境可以正常工作 首先需要通过Node包管...

popgis
今天
5
0
数组和链表

数组 链表 技巧一:掌握链表,想轻松写出正确的链表代码,需要理解指针获引用的含义: 对指针的理解,记住下面的这句话就可以了: 将某个变量赋值给指针,实际上就是将这个变量的地址赋值给指...

code-ortaerc
今天
4
0
栈-链式(c/c++实现)

上次说“栈是在线性表演变而来的,线性表很自由,想往哪里插数据就往哪里插数据,想删哪数据就删哪数据...。但给线性表一些限制呢,就没那么自由了,把线性表的三边封起来就变成了栈,栈只能...

白客C
今天
40
0
Mybatis Plus service

/** * @author beth * @data 2019-10-20 23:34 */@RunWith(SpringRunner.class)@SpringBootTestpublic class ServiceTest { @Autowired private IUserInfoService iUserInfoS......

一个yuanbeth
今天
5
0
php7-internal 7 zval的操作

## 7.7 zval的操作 扩展中经常会用到各种类型的zval,PHP提供了很多宏用于不同类型zval的操作,尽管我们也可以自己操作zval,但这并不是一个好习惯,因为zval有很多其它用途的标识,如果自己...

冻结not
昨天
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部