概览

本文意在对于OWASP’s Zed Attack Proxy(ZAP)软件做一个基本使用指南介绍。

ZAP是一个用于实施安全性测试的工具,即使没有很强的安全测试背景也可以很好的使用。

为了达到这一目的,本文会包含一些安全测试概念和术语,但是本文并不会就ZAP或安全测试进行过于深入的讨论。

安全测试基础

软件系统安全性测试,是一个评估和测试系统,以发现系统和数据安全性风险和漏洞的过程。

安全性测试并没有统一的方法论,不过我们将这一过程描述为“不以滥用为目的的发现系统的漏洞的行为”。

常见的安全性测试类型可以分为以下几种:
• 脆弱性评估 – 通常通过工具扫描的形式,评估系统安全性

• 渗透性测试 – 系统被分析并且通过模拟攻击的形式,评估其安全防御能力

• 运行时测试 – 通过终端用户的测试来评估系统安全性

• 代码审查 – 系统代码被评估和审查,以确定系统安全防御能力

注意(产品)风险评估并不包含在这个列表内。这是因为风险评估实际上并不是一种测试,而是对于不同风险的一种预估和分析,以及对于相应风险规避举措的拟定。

关于渗透性测试

渗透性测试,由测试人员扮演外部攻击者的角色,目标在于攻破系统以达到盗取数据或类似于拒绝服务攻击等目的。

渗透性测试的优势在于很少误报安全性问题(其它类型的测试,报出的安全性问题很多时候并不会真实构成被攻击风险)。

但是渗透性测试也是一种非常耗时的测试。

渗透性测试也用来测试系统防御机制,验证响应计划,并且确定安全性策略的遵循。

自动化的渗透测试是持续集成验证的重要部分,他有助于发现新的安全性风险,也能很快的发现在快速迭代过程中出现的安全性回退。

渗透性测试过程

手工渗透测试和自动化渗透测试都经常被使用,通常以结合起来的形式,来测试从服务器,到网络,到设备,到终端的所有链路。

本文则主要瞩目于Web应用或者说网站渗透性测试。
渗透性测试通常遵循以下阶段:

• 探索 – 测试人员学习被测系统。包括了解整个系统体系内被使用的部件,包括哪些终端,对于软件和系统而言安装了哪些补丁,等等。

这个过程中测试人员也会查找系统内的隐藏内容,已知安全风险,以及其它漏洞的表现。

• 攻击 – 测试人员尝试利用已知风险或可疑的漏洞,以证明这些风险和漏洞的存在。

• 报告 – 测试人员将测试的结果进行汇报,包括发现的系统漏洞,以及漏洞是如何被利用的,利用这些漏洞的困难程度,以及漏洞被利用的严重性。

渗透性测试目标

渗透性测试的终极目标在于搜寻系统的漏洞,这样这些漏洞可以被处理。

也可以用来确定系统不会被一些已知的风险所影响。

当系统漏洞被被修复以后,重新进行渗透性测试以确定系统漏洞已被弥补。

ZAP简介

Zed Attack Proxy (ZAP)是一个免费开源的渗透性测试工具,由OWASP组织开发和维护。

ZAP被设计用来专门测试Web应用的安全性,并且具有非常强的灵活性和可扩展性。

ZAP的核心机制是大家耳熟能详的“中间代理”。他通过架设在测试人员的浏览器和Web应用服务之间,这样他就可以拦截和审查浏览器和应用服务之间的信息交互。

必要的情况下,ZAP可以完成改包和重发。

如果已经有一个网络代理存在,ZAP也可以被配置为连接到已存在的代理。

ZAP提供了一系列针对不同安全技能等级的功能 - 从开发,到安全测试新手,到安全测试专家。

ZAP支持所有主流的操作系统以及Docker,并不强制绑定使用某一OS。

同时在ZAP客户端中的ZAP Marketplace中,也提供了非常多的免费的附加组件,以提供多种功能。

由于ZAP是一个开源软件,我们也可以查看他的源码,了解其功能的实现方法。

所有人都可以资源为ZAP贴砖加瓦,包括修复bug和增添功能。

安装和配置

ZAP提供了Windows, Linux以及Mac OS/X的安装包。

也提供了Docker镜像,下载地址可以在下文中找到。

安装

首先,在系统实施渗透性测试的系统中安装好ZAP。从以下地址下载适合你系统的ZAP安装包,并且执行:

https://github.com/zaproxy/zaproxy/wiki/Downloads

注意ZAP需要JDK8以上的版本来运行,所以安装的系统上需要预先安装JDK8以上版本。

Docker版不需要安装Java。

安装完成以后,就可以启动ZAP了。

保持会话

第一次启动ZAP,会被问到你是否要保持ZAP会话。

ZAP会话会默认以预设的名称和地址,记录到磁盘中的HSQLDB数据库中。

如果你不希望保持会话,那么在你退出ZAP时,这些会话文件会被删除。(意味着下次启动ZAP将无法看到之前的操作/测试记录)

如果选择保持会话,会话信息会被保存到本地数据库,这样下次使用时可以继续上次的操作。

选择保持会话,会提示为本次会话命名并选择存放地址。

第一次使用时,可以保持默认选项并开始,这样本次会话将不会被保持。

app安全测试-OWASP ZAP 2.8 使用指南(一):安全测试基础及ZAP下载、安装相关推荐

  1. 魔坊APP项目-18-种植园,基于支付宝提供的沙箱测试环境开发支付接口、服务端, 处理支付结果的同步通知和异步通知、修复页面底部菜单无法被点击的BUG

    种植园 一.基于支付宝提供的沙箱测试环境开发支付接口 沙箱环境: https://openhome.alipay.com/platform/appDaily.htm?tab=info 开发文档: ht ...

  2. 【2023年最新版】渗透测试入门教程,手把手带你进阶渗透测试工程师,学完即可就业

    前言 学习网络渗透技术是一件靠兴趣驱动的事情,只有强烈热爱一件事才能持之以恒的去做,对于那些三分钟热度的人来说还是劝你放弃吧,因为网络渗透技术自学需要很多方面的知识,没耐心是无法学会的. 当然除了有想 ...

  3. Rails测试《十一》添加邮件发送程序及测试邮件发送程序

    讲到测试邮件发送程序,我们首先要让系统可以发送邮件.我们先来给系统添加发送邮件的功能. Action Mailer in Rails 3是一个不错的视频教程,大家可以参考. 还有就是http://gu ...

  4. 天天红单app下载安装_App内测好帮手,稳定内测分发就选择TF签名

    自从年初以来,有关TF签名的讨论在签名行业就越来越多.TF签名号称稳定安全永不掉签, 那么事实真的如此吗?今天我们就来介绍一下ios App内测好帮手--TF签名. TF签名即testflight,它 ...

  5. 测试工程师python面试常问问题_面试测试工程师一般会问些什么?

    互联发展是很快的,每年都会有新语言的诞生 西瓜我,干测试已经三年了,主要负责web功能测试,java编写接口自动化,APP功能测试,APP 接口自动化(也是用的java),面过得测试也差不多30个,我 ...

  6. tcp连接测试工具_“国货之光”!国产弱网测试神器 QNET,比主流弱网测试工具强在哪?...

    弱网测试,是软件测试不可缺少的一个环节,但目前主流的一些弱网测试工具,或多或少暴露了一些缺点,这工具称不称手只有自己知道. 最近腾讯出了一款弱网测试神器 QNET,被誉为测试行业的"国货之光 ...

  7. 7年,我从功能测试到测试开发,写给即将进入或者正在做测试的你...

    蓦然回首,软件测试风风雨雨这7年,起初每天的工作只是鼠标点点点,别问我测试用例咋写,我还真不知道,闲的时候真的怀疑自己的存在价值,每天拿着7000的工资,飘荡在繁华的深圳,吃不饱也饿不死,未来一片茫然 ...

  8. 四年测试工程师经历,下一步转开发还是继续测试?

    问题: 四年测试工程师经历,下一步转开发还是继续测试? 测试四年,没有积累编程脚本能力和自动化经验,找工作时都要求语言能力,自动化框架. 感觉开发同事积累的经历容易找工作. 下一步,想办法转开发岗还是 ...

  9. 【软件测试】小陈她的测试追梦之路,实习开端到测试第一人......

    目录:导读 前言 一.Python编程入门到精通 二.接口自动化项目实战 三.Web自动化项目实战 四.App自动化项目实战 五.一线大厂简历 六.测试开发DevOps体系 七.常用自动化测试工具 八 ...

最新文章

  1. ​Microbiome:海南大学张家超、Rob Knight等揭示益生菌在宿主肠道内适应性进化规律...
  2. keepalived双实例配置
  3. python的分支语句中if和else必须同时出现_Python条件控制分支语句if…else…
  4. Git基础之(二十)——标签管理——创建标签
  5. [密码学] 双重与三重DES
  6. IT规划的企业应用实践(8)研究的目的和意义 之 解决两大矛盾
  7. Unfair contest 模拟-分类讨论
  8. leetcode 242. 有效的字母异位词
  9. tcpmp 编译 源代码分析
  10. process credentials(二)
  11. 微信公众号开发--微信JS-SDK扫一扫功能
  12. 老师说过链表是分水岭,至少得会这些题目
  13. python 3.28 第三章 函数嵌套/名称空间//内置名称空间/全局名称空间/局部名称空间/作用域/函数对象/闭包函数。...
  14. FFmpeg API 变更记录
  15. 安卓虚拟键盘_干货分享:推荐几款性能不错的安卓模拟器
  16. 中国传统美食网页HTML代码 学生网页课程设计期末作业下载 美食大学生网页设计制作成品下载 DW餐饮美食网页作业代码下载
  17. 手机摄像头变成PC电脑摄像头
  18. vs code里面的less插件一直报错_ipad4现在怎么登微信?一直显示微信版本过低怎么办...
  19. 百城百店 宝瓷林.北京SKP商场品牌店开业
  20. 狼的故事17:大结局

热门文章

  1. using (XX xx = ...) 的含义
  2. 搜狗输入法 - 自定义短语
  3. 【Flutter】Flutter 应用生命周期 ( 前台状态 resumed | 后台状态 paused | 非活动状态 inactive | 组件分离状态 detached )
  4. 服务器怎么建ip网站,云服务器搭建网站ip
  5. 如何获取土豆网等在线视频FLV地址
  6. DataWhale Golang(十、异常处理)
  7. Ubuntu 16.04安装安装iBus中文输入法
  8. JSP——猜英文小写字母的Web小游戏
  9. 物联卡实名用不用注销,物联卡三个月不用会自动注销吗
  10. php7 字符串转数字,strtoupper()