当前位置: 首页 > news >正文

【网络安全学习】漏洞扫描:-04- ZAP漏洞扫描工具

**ZAP(Zed Attack Proxy)**是一款由OWASP组织开发的免费且开源的安全测试工具。

ZAP支持认证、AJAX爬取、自动化扫描、强制浏览和动态SSL证书等功能。

1️⃣ 安装zap工具

现在的kali版本不一定会预装zap,我们可以自行安装,安装也十分简单。

apt-get install zaproxy -y

安装完成后,点击左上角的图标,搜索zap,点击打开即可

在这里插入图片描述
在这里插入图片描述

第一次打开会要求进行更新

在这里插入图片描述

2️⃣ 设置代理

设置代理是为了让所有的请求和响应都能被ZAP工具拦截和检查。

设置ZAP代理

ZAP工具默认使用8080端口开启HTTP代理,如果需要修改,依次点击**【工具】→【选项】→【网络】→【本地服务器/代理】**进行修改,如下图所示:

在这里插入图片描述

在这里插入图片描述

设置浏览器代理

这里以FireFox浏览器举例

在Firefox中单击**【工具】→【设置】,在打开的界面中找到【网络设置】,并单击【设置】按钮。在【连接设置】对话框中,可以选择【手动配置代理】,然后在【HTTP代理】文本框中填写ZAP工具的代理地址,在【端口】**文本框中输入ZAP的端口号。

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

3️⃣ 设置证书

访问HTTPS链接的时候,需要将浏览器代理设置中选择**【也将此代理用于HTTPS】**,再将ZAP生成的证书导入浏览器。

ZAP生成证书:

【工具】→【选项】→【网络】→【服务器证书】→【保存】

在这里插入图片描述

FireFox中导入证书:

【工具】→【设置】→【隐私与安全】→【证书】→【查看证书】

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

4️⃣ 开始扫描

🎈 执行主动扫描

在配置完代理和证书后,选择需要进行主动扫描的目标网站或URL,之后ZAP工具会自动发送不同的攻击载荷,并根据响应判断是否存在漏洞。

为了快速发起主动扫描,单击**【自动扫描】选项,然后在弹出的界面中输入要攻击的URL,并选择【使用传统爬虫】和【使用ajax爬虫】**复选框,这样可以让ZAP工具对网站下的各个页面进行扫描,而不仅仅针对首页或单个URL。

在这里插入图片描述

单击**【攻击】执行主动扫描。扫描完成后,会在警报栏中显示扫描结果,会以高、中、低、信息**这些级别进行分类。

在这里插入图片描述

单击每个报警会有详细的信息以及建议,以跨站脚本攻击为例:

在这里插入图片描述

🎈 生成报告

选择**【报告】→【生成报告】**,在弹出的选项卡中选择,并生成报告,默认生成的报告为html文件。

在这里插入图片描述

点击**【生成报告】**后会自动弹出报告:

在这里插入图片描述

🎈 手动探索

在进行手动探索时,ZAP工具不会自动发送攻击载荷,而是由渗透测试人员根据需要选择或编辑不同的参数和值后,自行发送。

首先设置ZAP和浏览器的代理,这个之前已经设置过了。

接下来,需要在ZAP中启动代理浏览器来访问目标网站。

选择**【手动浏览】**,并选择代理浏览器,并启动:

在这里插入图片描述

在访问URL时,ZAP工具会记录所有的请求和响应,并显示在网站树和历史记录中。

图中是我之前做了个ping的操作:

在这里插入图片描述

我们可以从这些记录中选择任意一个请求或响应,并进行修改或重发,如下所示:
在这里插入图片描述
修改并发送
获得响应

5️⃣ 小结

通过以上介绍,我们了解了如何使用ZAP工具对网站执行扫描,以发现其存在的安全漏洞。

当然,ZAP工具还有很多其他功能和特性,例如被动扫描、暴力破解、Web套接字支持等,可自行探索。

🆘 请不要使用以上技术损害他人利益,这些均为技术研究,请遵守相关的法律法规,谢谢! 💥

http://www.lryc.cn/news/379556.html

相关文章:

  • fffdddd
  • SpringSecurity实战入门——授权
  • Linux 网络请求工具:curl
  • leetcode 二分查找·系统掌握 寻找旋转排序数组中的最小值II
  • Flink 容错
  • OpenAI策略:指令层级系统让大模型免于恶意攻击
  • 芝麻清单助力提升学习工作效率 专注时间完成有效的待办事项
  • Docker 容器操作命令
  • 华为配置创建vlan及划接口,trunk干道,DHCP池塘配置
  • vue3 computed与watch,watchEffect比较
  • 论文:R语言数据分析之机器学习论文
  • 【C++】STL中优先级队列的使用与模拟实现
  • C#开发-集合使用和技巧(二)Lambda 表达式介绍和应用
  • Qt底层原理:深入解析QWidget的绘制技术细节(2)
  • 【Gradio】表格数据科学与图表-连接到数据库
  • 艾多美用“艾”为生命加油,献血活动回顾
  • 人工智能在气象预报领域的崛起:GraphCast引领新纪元
  • http和https的区别在哪
  • windows10远程桌面端口,Windows 10远程桌面端口修改的两个方法
  • 力扣1504.统计全1子矩形
  • vue3高德地图组件化,解决复用地图组件时渲染失败问题
  • Langchain 如何工作
  • 【数据结构】顺序表实操——通讯录项目
  • C++继承与多态—多重继承的那些坑该怎么填
  • 论文阅读:基于谱分析的全新早停策略
  • 1.接口测试-postman学习
  • 2024年码蹄杯本科院校赛道初赛(省赛)
  • PHP蜜语翻译器在线文字转码解码源码
  • 安卓浏览器区分启动、打开、分享
  • C/C++ 数组负数下标