Web漏洞扫描工具AppScan与AWVS测评及使用体验

AppScan和AWVS业界知名的Web漏洞扫描工具,你是否也好奇到底哪一个能力更胜一筹呢?接下来跟随博主一探究竟吧。

1. 方案概览

  • 第一步:安装一个用于评测的Web漏洞靶场(本文采用最知名和最广泛使用的靶场,即OWASP Benchmark);
  • 第二步:分别使用两款工具对靶场进行漏洞扫描,扫描参数尽量保持一致;
  • 第三步:从多维度对比分析扫描过程和扫描结果;

两者的扫描报告概览如下:

AWVS

AppScan

2. 具体实施

2.1. 环境信息

本次测评所用的基础环境和工具版本信息如下:

  • 操作系统 Windows 10
  • OWASP benchmark V1.2
  • AppScan 10.0.8
  • AWVS 15.0.221007170

若对以下评测过程感兴趣,可以动手实操,所需要的基础环境和工具安装配置指导可以参阅博主前期文章:

  • OWASP Benchmark | OWASP 基准项目镜像方式安装、配置及如何生成SAST和DAST工具的评分报告
  • 安全工具 | AWVS漏洞扫描工具安装、使用技巧及注意事项(附工具下载链接)
  • 安全工具 | AppScan漏洞扫描工具标准版免费安装、配置及使用指导(附工具下载链接)

2.2. 测试步骤

2.2.1. 启动靶场项目OWASP Benchmark

启动OWASP Benchmark项目,项目启动成功后可以通过URL访问靶场,本例中启动靶场地址为https://local:8443/benchmark/
在这里插入图片描述

2.2.2. AWVS扫描

1、在AWVS上创建扫描任务,参数配置如下:

  • 扫描策略:Full Scan,即全量扫描;
  • 扫描速度:Fast,即AWVS的最快速度扫描
  • 其他参数默认
    扫描参数

2、按以上配置执行扫描,扫描完成后可以界面上看到扫描结果。
在这里插入图片描述

3、进入报告详情界面查看并下载报告

在这里插入图片描述

在这里插入图片描述

2.2.3. AppScan扫描

1、打开AppScan客户端,创建扫描任务,参数配置如下:

  • 扫描策略:Full Scan,即全量扫描;
  • 扫描速度:Fast,即快速度扫描
  • 其他参数默认
    扫描参数

扫描速度:快速
2、启动AppScan扫描任务,可以看到CPU直接爆满

CPU利用率

整个扫描过程比较漫长,需要耐心等待
6个半小时,任务进度才执行到一半

3、扫描完成后查看并下载报告
9个小时
在这里插入图片描述

2.3. 报告对比分析

完成以上两款工具对同一靶场的扫描后我们可以得到如下扫描报告:

  • AppScan OWASP benchmark扫描报告.pdf (访问密码: 6277)
  • AWVS OWASP benchmark扫描报告.pdf (访问密码: 6277)

接下来我们按以下维度进行对比:

对比项AWVSAppScan备注
扫描耗时140min533minAppScan耗时久主要有两个原因:1、AppScan扫描规则极多;2、以上扫描参数配置的扫描速度并非是AppScan的最快速度
扫描请求个数20万+个100万+个从AppScan发送的请求数超百万个,也可以简单说明AppScan规则数量极多
发现问题数210个,其中有202个是高危漏洞9000+个,其中972个高危漏洞两者发现的问题根本不在一个量级

由于扫描报告涉及到的漏洞较多,高达上千个,博主暂时未来得及将扫描的问题进行分类比较,接下来有时间会将两者的扫描报告与OWASP Benchmark 的基准漏洞做次对比,用于评测两款工具针对漏洞的误报率和漏报率。

2.4. 总结

AppScan有业界最强悍的规则库,AppScan的规则库内置了超过1.2万个测试用例,测试用例最全,所以AppScan扫描的问题更多,扫描时长也较久;AWVS扫描SQL 注入和跨站脚本的能力较专,误报相对较低,扫描时长较短。建议企业在日常测试流程中使用AWVS,在针对重点或高风险版本使用AppScan进行查漏补缺。


在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/42038.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

啥?你没听过SpringBoot的FatJar?

写在最前面: SpringBoot是目前企业里最流行的框架之一,SpringBoot的部署方式多数采用jar包形式。通常,我们使用java -jar便可以直接运行jar文件。普通的jar只包含当前 jar的信息,当内部依赖第三方jar时,直接运行则会报…

robotframework-appiumLibrary 应用 - 实现 app 自动化

1、安装appiumLibrary第三方库 运行pip命令:pip install robotframework-appiumlibrary 若已安装,需要更新版本可以用命令:pip install -U robotframework-appiumlibrary 2、安装app自动化环境。 参考我的另外一篇专门app自动化环境安装的…

设计模式探索:策略模式

1. 什么是策略模式(Strategy Pattern) 定义 策略模式(Strategy Pattern)的原始定义是:定义一系列算法,将每一个算法封装起来,并使它们可以相互替换。策略模式让算法可以独立于使用它的客户端而…

打卡第4天----链表

通过学习基础,发现我的基本功还得需要再练练,思路得再更加清晰明了,这样子做算法题才能驾轻就熟。每天记录自己的进步。 一、两两交换 题目编号:24 题目描述: 给你一个链表,两两交换其中相邻的节点,并返回交换后链表的头节点。你必须在不修改节点内部的值的情况下完成本…

[数据结构] 基于交换的排序 冒泡排序快速排序

标题:[数据结构] 基于交换的排序 冒泡排序&&快速排序 水墨不写bug (图片来源于网络) 目录 (一)冒泡排序 优化后实现: (二)快速排序 I、实现方法: &#…

opencv环境搭建-python

最近遇到了一些图像处理的需求,所以需要学习一下opencv,来记录一下我的学习历程。 安装numpy pip install -i https://pypi.tuna.tsinghua.edu.cn/simple numpy安装matplotlib pip install -i https://pypi.tuna.tsinghua.edu.cn/simple matplotlib安装opencv …

ctfshow web入门 web338--web344

web338 原型链污染 comman.js module.exports {copy:copy };function copy(object1, object2){for (let key in object2) {if (key in object2 && key in object1) {copy(object1[key], object2[key])} else {object1[key] object2[key]}}}login.js var express …

【ubuntu】挂载新磁盘

1、查看磁盘 sudo fdisk -l#Disk /dev/sdb: 4.0 TiB #Disk model: HNA641010BCF105 #Units: sectors of 1 * 512 512 bytes #Sector size (logical/physical): 512 bytes / 4096 bytes #I/O size (minimum/optimal): 4096 bytes / 4096 bytes #Disklabel type: gpt #Disk id…

python argparse模块nargs用法

nargs 是 argparse 模块中用来指定参数的数量的属性。不同的 nargs 取值有不同的含义,下面是一些常用的用法: nargsNone (默认值):表示该参数只能接收一个值。例如:--foo 123。 nargs?:表示该参数最多接收一个值。如…

gcc/g++的四步编译

目录 前言1.预处理(进行宏替换)2.编译(生成汇编)3.汇编(生成二进制文件)4. 链接 (生成可执行文件)a. 动态库 && 动态链接b. 静态库 && 静态链接c. 验证d. 动静态链接…

技术实现路径怎么写?(Word项目技术路径文档参考)

软件项目编写技术实现路径至关重要,因为它为项目团队提供了清晰的开发蓝图。这一路径明确了从项目启动到交付各阶段所需的技术方案、步骤及预期成果,有助于团队统一认识,确保开发工作有序进行。同时,技术实现路径有助于识别潜在的…

HetuEngine简介

目录 HetuEngine是什么? HetuEngine的特点以及使用场景 特点 使用场景 HetuEngine介绍 结构 近期用到了Hetu,了解下这个工具是起什么作用的。 HetuEngine是什么? 是引擎,设计是为了让与当前的大数据生态完美融合的引擎&am…

本安防爆手机:危险环境下的安全通信解决方案

在石油化工、煤矿、天然气等危险环境中,通信安全是保障工作人员生命安全和生产顺利进行的关键。防爆智能手机作为专为这些环境设计的通信工具,提供了全方位的安全通信解决方案。 防爆设计与材料: 防爆智能手机采用特殊的防爆结构和材料&…

Mysql部署MHA高可用

部署前准备: mysql-8.0.27下载地址:https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.27-1.el7.x86_64.rpm-bundle.tar mha-manager下载地址:https://github.com/yoshinorim/mha4mysql-manager/releases/download/v0.58/mha4mysql-mana…

【Selenium】 使用save_screenshot截图无法保存图片

Selenium 使用save_screenshot截图无法保存 代码如下 from time import sleep from selenium import webdriver driver webdriver.Chrome() driver.maximize_window() driver.get(http://www.baidu.com) # 截取当前窗口,指定截图图片的保存位置 driver.save_scre…

为什么需要做网络安全服务?

网络安全服务之所以重要,是因为它在保护数字资产、维护企业运营、确保法规遵从、防范恶意行为以及建立信任等方面扮演着关键角色。以下是一些主要的理由: 保护核心资产和数据: 数字化转型使得企业数据变得极其宝贵,包括知识产权、…

深度学习模型加密python版本

支持加密的模型: # torch、torch script、onnx、tensorrt 、torch2trt、tensorflow、tensorflow2tensorrt、paddlepaddle、paddle2tensorrt 深度学习推理模型通常以文件的形式进行保存,相应的推理引擎通过读取模型文件并反序列化即可进行推理过程. 这样一来&#…

数据库——事务管理

title: 数据库——事务管理 date: 2024-07-06 11:55:39 tags: 数据库 categories: 数据库 cover: /image/T1.jpg description: 数据库的事务管理的相关知识 事务管理 事务管理是对一系列数据库操作进行管理的过程,这些操作被视为一个不可分割的工作单元&#xff0…

20K Stars!一个轻量级的 JS 库

大家好,我是CodeQi! 一位热衷于技术分享的码仔。 Driver.js 是一个轻量级的 JavaScript 库,旨在帮助开发人员创建网站或应用程序的引导和教程。通过 Driver.js,您可以引导用户了解网站的各个功能和使用方式。 Driver.js 提供了高度可定制的功能,使其能够适应各种需求和…

宝塔-Linux模板常用命令-centos7

一、宝塔-Linux模板常用命令: 1.停止宝塔 /etc/init.d/bt stop 2.启动宝塔 /etc/init.d/bt start 3.重启宝塔 /etc/init.d/bt restart 4.卸载宝塔 /etc/init.d/bt stop && chkconfig --del bt && rm -f /etc/init.d/bt && rm -rf …