OWASP_ZAP


title: OWASP_ZAP
date: 2016-10-13 20:50
tags: Kali渗透测试 Web渗透测试


0x00 OWASP_ZAP

Zend attack proxy 是一款 web application 集成渗透测试和漏洞工具,同样是免费开源跨平台的。

OWASP_ZPA 支持截断代理,主动、被动扫描,Fuzzy,暴力破解并且提供 API。

OWASP_ZPA 是Kali Web Top 10 之一。


0x01 截断代理

首次启动 OWASP_ZAP 会提示是否将 session 进行保存,以及如何保存。

OWASP_ZAP_第1张图片
首次启动页面.png

OWASP_ZAP 默认监听的是 8080 端口,并且在启动 ZAP 的时候便会自动开始监听。

如此,只需设置浏览器代理,ZAP 便会自动爬取所有数据。


OWASP_ZAP_第2张图片
Proxy.png

0x02 主动扫描

ZAP 最简单的使用方式便是在首页直接输入目标 Target 然后点击 攻击 便会开始主动扫描了。

OWASP_ZAP_第3张图片
scan.png


0x03 Fuzzer

通过右键选择某个特定页面进行 Fuzzer。

OWASP_ZAP_第4张图片
Fuzzer.png

此外,也可以选择工具菜单中的 Fuzz 进行 Fuzzing 。

OWASP_ZAP_第5张图片
Paste_Image.png

OWASP_ZAP_第6张图片
Fuzzer.png

数据库注入 Fuzzing

选择可能存在 SQL 注入的可疑字符串,为其添加 PayLoads 记性 SQL Injection Fuzzing。

OWASP_ZAP_第7张图片
SQL Injection Fuzzing.png

fuzzing 完整以后,可以通过 Code ,Size Resp.Header 等字段属性对 fuzzing 的结果进行筛选。

OWASP_ZAP_第8张图片
Fuzzing结果筛选.png

页面目录Fuzzing

首先选中需要替换的字符串,然后点击 Fuzz Locations 中的 Add 选中以选择 fuzzing 的方式。

OWASP_ZAP_第9张图片
fileFuzzing.png

我们可以使用 字符串,脚本,正则表达式,文本文件或 ZAP 自带的 File Fuzzer 去搜索网站目录。

OWASP_ZAP_第10张图片
网站目录页面Fuzzing.png

0x04 暴力破解

OWASP_ZAP_第11张图片
暴力破解.png

但是,当我们使用一个字典文件去尝试暴力破解的时候,如何去识别出破解成功与不成功的不同差异,便只有依靠上帝了。


0x05 ZAP 的 API

API 是一程序开发的接口。ZAP 提供API 一便让开发者使用ZAP 以定制自己的扫描程序。

ZAP 的 API 使用文档:[ http://zap]


0x06 Mode(扫描模式)

ZAP 有四种扫描模式 Safe, Protected, Standard, Attack(攻击似的扫描)。 扫描所得的漏洞数量以次递增。

OWASP_ZAP_第12张图片
Mode

0x07 Scan Policy (扫描策略)

选择特定页面进行 Active Scan :

OWASP_ZAP_第13张图片
Active Scan

ZAP 继承了一个默认的扫描策略 Default Policy:

OWASP_ZAP_第14张图片
Default Policy

当然,我们可以定制自己的扫描策略,在 顶部导航 分析 中的扫描策略(或者Ctrl+P) 打开 Scan Policy Manager 添加或修改自己的扫描策略。

OWASP_ZAP_第15张图片
Scan Policy Manager

如此,我们便可以在以后的网站扫描配置中选择自定义的扫描策略了。


0x08 Anti CSRF Tokens

某些应用程序为了防止 CSR 攻击,在每次访问时都会随机生成一个新的 Token。这些由伪随机算法生成的随机数也许大部分的扫描器都不支持。所以我们可以通过 ZAP 的 Anti CSRF Tokens 功能添加该网站的特定的 Tokens(如果该网站有 Token 的话)。

OWASP_ZAP_第16张图片
Anti CSRF Tokens

what's token?
在OAuth协议中,token是在输入了用户名和密码之后获取的,只不过是服务器或者说网站帮你生成的临时密码。利用这个token你可以拥有查看或者操作相应的资源的权限。你有这些权限,是因为服务器知道你是谁(authentication)以后赋予你的,所以token这个东西,其实就是你的一个“代表”,或者说完全能代表你的“通行证”。从这个概念来说,“令牌”这个翻译,真的是非常的“信雅达”啊


0x09 HTTP -CA

首先生成并保存 ZAP 的http 证书。

OWASP_ZAP_第17张图片
HTTP -CA

然后在浏览器中导入 ZAP 的根证书。


0x0A ZAP 身份认证

在 ZAP 中最常用的 身份认证是使用 HTTP Session 的认证方式。当然 ZAP 也是支持其它认证方式的,并且我们可以在 Session Properities 中进行配置。

OWASP_ZAP_第18张图片
Authentication

由上图可知,目前 ZAP 支持四种身份认证方法: Form,HTTP/NTLM, Manual,Script-based

默认情况下,一个 Muaual 认证方式就足够了,也是最简单易用的方式。


HTTP Session

ZAP 在默认情况下只会将其内置的几个 session 名称识别为 HTTP Session。但是,某些情况下,有的网站也许会自定义自己的 session 名称,这时我们有必要手动为其添加自定义的 session 标识。

OWASP_ZAP_第19张图片
HTTP Session
添加自定义的 Security

0x0B 截断

ZAP 可以实时截断从客户端发起的请求或者从服务器端回传的响应。

OWASP_ZAP_第20张图片
Set Break

0x0C 隐藏域

以微软搜索引擎 必应为例,未开启隐藏域时访问的眼如下:

OWASP_ZAP_第21张图片
BiYing

开启 ZAP 的隐藏域显示功能:

OWASP_ZAP_第22张图片
Paste_Image.png

0x0D 总结

标准扫描工作流程: 设置代理 --> 手动爬网 --> 自动爬网 --> 主动扫描.

你可能感兴趣的:(OWASP_ZAP)