阿一网络安全培训中心专门为你准备了一份WScan使用教程

下载地址:https://github.com/chushuai/wscan/releases

版本的选择

Windows就选windows_amd64

Linux就选linux_amd64

mac就选darwin_amd64

下载好后,运行一次exe会生成一个config.yaml文件

把该文件中plugins下面的所有插件的enabled设置为True。(正常已经设置好了,不用更改)

命令:

webscan,ws    运行webscan任务

servicescan,ss  运行服务扫描任务

subdomain,sd  运行子域任务

Reverse     运行独立的反向服务器

convert 转换结果从json到html或从html到json

genca 生成CA证书和密钥

version 显示版本信息

help,h 显示命令列表或一个命令的帮助

全局选项:

--config 值从文件中加载配置(“配置”)

--help,-h 显示帮助(默认值:false)

--log-level 日志级别,选项为调试、信息、警告、错误、致命

--version,-v打印版本(默认值:false)

运行的一些参数

--json-output= wscan_scan_result.json 将数据以json格式导出到该文件中

--html-output=wscan_scan_result.html 将数据以网页的格式导出到该文件中

--basic-crawler 爬虫模式扫描,自动检测网页中的所有url链接,进行扫描

--url 指定url的地址

--url-file=/wscan/url_file.txt 批量扫描该文件中的url地址

--browser 自动打开浏览器,并对url进行测试

--plug 指定插件进行测试

主动扫描

深度扫描

./wscan  --log-level=debug ws --basic-crawler http://testphp.vulnweb.com/ --json-output=wscan_scan_result.json --html-output=wscan_scan_result.html

./wscan  --log-level=debug ws --browser  http://testphp.vulnweb.com/ --html-output=wscan_scan_result.html

./wscan  --log-level=debug ws --url http://testphp.vulnweb.com/listproducts.php?cat=1  --json-output=wscan_scan_result.json

 ./wscan  --log-level=debug ws --url-file=/wscan/url_file.txt –html-output=wscan_scan_result.html

以第一个为例,当运行该命令时,对Home of Acunetix Art 

进行webscan扫描 日志等级为debug调试 把数据导出到wscan_scan_result.json和wscan_scan_result.html文件中

 

在wscan_scan_result.html中可以详细的看到扫描的结果,可以查看各个漏洞的具体信息,payload 请求包 响应包等等

第二个会自动打开浏览器并进行扫描

第三个只对指定的url进行扫描测试

专项扫描

在命令行中使用plug参数启用要扫描的插件

./wscan  --log-level=debug ws  --plug=sqldet --basic-crawler http://testphp.vulnweb.com/ --html-output=wscan_scan_result.html

这里只使用了sqldet插件进行测试

被动扫描

生成并安装CA

./wscan genca

会在文件夹中生成ca.key ca.crt两个文件

在浏览器中添加证书,以chrome为例

在设置中搜索证书

安全中

最下方的管理证书中

导入证书

选择刚刚生成的证书

选择受信任的根证书颁发机构

然后在配置代理

首先在浏览器插件中安装Proxy SwitchyOmega

自己新建一个模式,填好ip,端口选一个不常使用的,我选的7777,就可以了

深度扫描

./wscan  --log-level=debug ws --listen=127.0.0.1:7777 --json-output=wscan_scan_result.json  

他就开始监听127.0.0.1的7777端口

这个时候在浏览器中选中wscan的代理模式,开始浏览网页,他就会对你浏览的网页进行一个扫描并测试

就对该网页进行了一个漏洞的扫描,并生成文件,可以查看漏洞的具体信息

专项扫描

./wscan  --log-level=debug ws  --plug=sqldet,xss  --listen=127.0.0.1:1000 --json-output=wscan_scan_result.json  

同样的可以只使用某个插件进行被动扫描,这里就不阐述了

POC扫描

因为Wscan不内置任何POC插件,但Wscan的prometheus插件引擎支持Nuclei、XRAY、Goby标准POC插件,与其他扫描器不同的是Wscan可以自定义POC深度,从而发现更多的Web安全问题

下载插件包

XRAY Goby POC插件包下载地址

https://github.com/chaitin/xray/tree/master/pocs

wscan_windows_amd64.exe创建一个文件夹wscan-poc,把上面pocs文件夹放入其中

专项扫描

同样的操作方法,仅使用poc插件进行扫描测试

./wscan --log-level=debug ws  --poc=E:/pentest/wscan_windows_amd64.exe/wscan-poc/pocs/* --url http://testphp.vulnweb.com/ --html-output=wscan_scan_result.html

./wscan --log-level=debug ws  --poc=/your_wscan_poc/wscan-poc/pocs/*  --url-file=/url_file.txt  --html-output=wscan_scan_result.html

深度扫描

运行方式与主被动扫描方式一致,但需要配置插件包路径,需要修改config.yaml文件中的以下内容,以指定include_poc的路径

开启扫描会自动加载poc

配合burpsuit一起使用

打开Burpsuit

在设置中network-connection中配置上游代理服务器,把流量转发到7777端口

这时在wscan监听7777端口,浏览器的代理开启burp的代理,是8080端口,经过burp会转发到7777端口,wscan就会进行扫描了

Wscan开始扫描了,也会在当前目录下生成html,来方便查看漏洞信息

这样的好处,就是可以通过wscan来自动扫描,你访问的网页,用burp去测试那些需要手工抓包的逻辑漏洞等等

自定义FUZZ插件

不同于POC测试,自定义FUZZ插件,会对指定位置的参数进行爆破,并支持自定义CEL表达式来验证是否存在漏洞

Step1编写自定义FUZZ插件

样例参考https://github.com/chushuai/wscan/tree/main/core/plugins/custom/tmpl/

Step2修改配置文件

需要修改config.yaml文件中的以下内容,以指定custon的路径

Step3执行定义的FUZZ插件

./wscan --log-level=debug ws --plug=custom --url http://testphp.vulnweb.com/listproducts.php?artist=1  --html-output=wscan_scan_result.html

Waf绕过/Waf测试

https://github.com/chushuai/wscan/tree/main/core/plugins/waftest/tmpl/owasp

  ./wscan --log-level=debug ws --plug=custom_tmpl  --browser  http://testphp.vulnweb.com/  --html-output=wscan_scan_result.html

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

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

相关文章

数据库使用笔记

1.mysql数据库频繁访问导致连接超时 解决办法一: 优化查询:检查并优化SQL查询语句,减少不必要的数据库调用。增加连接池大小:如果应用程序使用连接池,可以考虑增加连接池的最大连接数。(注:不能…

【JavaScript脚本宇宙】从入门到精通:让你的JavaScript项目无坚不摧的测试框架指南

众里寻他千百度:为你的JavaScript项目选择最佳测试框架 前言 本文将对几个常用的JavaScript测试框架进行比较,包括Jest、Mocha、Jasmine、AVA、QUnit和Cypress。每个框架都将从概述、主要特性、安装与配置以及示例代码等方面进行介绍。通过比较这些框架…

Selenium进行Web自动化滚动

在使用Selenium进行Web自动化时,计算页面内的滚动条位置或执行滚动操作通常涉及JavaScript执行。Selenium的WebDriver提供了执行JavaScript代码的功能,这可以用来获取滚动条的位置或滚动到页面上的特定位置。 获取滚动条位置 你可以使用JavaScript的wi…

Nginx网站服务详解(设置并发数、实现不同虚拟主机等)

一、nginx的最大并发数设置已经状态收集模块 [root192 nginx]# cat nginx.conf # For more information on configuration, see: # * Official English Documentation: http://nginx.org/en/docs/ # * Official Russian Documentation: http://nginx.org/ru/docs/user ngin…

单源最短路径问题(Dijstra)

#include<iostream> using namespace std; #define MAX 500 #define INT 999 typedef struct {char vex[MAX];int Edge[MAX][MAX];int vexnum,arcnum; }MGraph; void InitMG(MGraph &MG) {cout<<"输入顶点数和边数&#xff1a;";cin>>MG.vexnu…

SOBEL图像边缘检测器的设计

本项目使用FPGA设计出SOBEL图像边缘检测器&#xff0c;通过分析项目在使用过程中的工作原理和相关软硬件设计进行分析详细介绍SOBEL图像边缘检测器的设计。 资料获取可联系wechat 号&#xff1a;comprehensivable 边缘可定义为图像中灰度发生急剧变化的区域边界,它是图像最基本…

linux中find命令和exec的强大组合用法

如何将 find 命令与 exec 一起使用 Find 是一个已经非常强大的命令&#xff0c;用于根据许多条件搜索文件。exec 命令使您能够处理 find 命令的结果。 我在这里分享的例子只是一瞥。find-exec 命令组合在一起为您提供了在 Linux 命令行中执行操作的无限可能。 find 和 exec 命令…

Llama 3 模型微调的步骤

环境准备 操作系统&#xff1a;Ubuntu 22.04.5 LTS Anaconda3&#xff1a;Miniconda3-latest-Linux-x86_64 GPU&#xff1a; NVIDIA GeForce RTX 4090 24GStep 1. 准备conda环境 创建一个新的conda环境&#xff1a; conda create --name llama_factory python3.11激活刚刚创…

[每周一更]-(第103期):GIT初始化子模块

文章目录 初始化和更新所有子模块分步骤操作1. 克隆包含子模块的仓库2. 初始化子模块3. 更新子模块 查看子模块状态提交子模块的更改处理子模块路径错误的问题 该问题的缘由是因为&#xff1a;在写某些代码的时候&#xff0c;仓库中有些文件夹&#xff0c;只提交了文件夹名称到…

Spring Boot中的依赖注入详解

Spring Boot中的依赖注入详解 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01;在今天的文章中&#xff0c;我们将深入探讨Spring Boot中的依赖注入&#xff08;D…

EasyExcel 导出批注信息以及背景色

1. 批注信息 package com.xxx.demo;import lombok.Getter; import org.apache.poi.ss.usermodel.IndexedColors;/*** This class represents the comment information associated with a specific cell in an Excel sheet.* The columnIndex field specifies the column numbe…

react中自定义上传文件的hook

react中自定义上传文件的hook 在React中&#xff0c;你可以创建自定义Hook来处理文件上传的逻辑。自定义Hook允许你将组件逻辑提取到可重用的函数中&#xff0c;这样你就可以在不同的组件之间共享这些逻辑。 以下是一个简单的示例&#xff0c;展示了如何创建一个用于文件上传…

[GIS]WPS地理处理服务

在GeoServer中&#xff0c;WPS&#xff08;Web Processing Service&#xff09;是一个用于执行地理空间数据处理的规范。WPS服务允许用户提交地理处理请求&#xff0c;这些请求由服务器上的地理处理过程&#xff08;GeoProcessing Process&#xff09;执行&#xff0c;并返回结…

时常在面试中被问到的多线程问题:下篇

文章目录 线程和线程池有什么区别&#xff1f;线程池 (ThreadPool)区别 如何创建线程池&#xff1f;1. 固定大小线程池 (Fixed Thread Pool)2. 可缓存线程池 (Cached Thread Pool)3. 单线程线程池 (Single Thread Pool)4. 定时线程池 (Scheduled Thread Pool) 推荐使用哪种方式…

【贪心】个人练习-Leetcode-2271. Maximum White Tiles Covered by a Carpet

题目链接&#xff1a;https://leetcode.cn/problems/maximum-white-tiles-covered-by-a-carpet/description/ 题目大意&#xff1a;给定一个左右区间序列tiles[][]&#xff0c;每个元素代表这个区间被瓷砖覆盖&#xff08;左右都是闭合的&#xff09;。给定一块毯子&#xff0…

使用 Ubuntu x86_64 平台交叉编译适用于 Linux aarch64(arm64) 平台的 QT5(包含OpenGL/WebEngine支持) 库

使用 Ubuntu AMD64 平台交叉编译适用于 Linux ARM64 平台的 QT5(包含 OpenGL/WebEngine 支持) 库 目录 使用 Ubuntu AMD64 平台交叉编译适用于 Linux ARM64 平台的 QT5(包含 OpenGL/WebEngine 支持) 库写在前面前期准备编译全流程1. 环境搭建2. 复制源码包并解压&#xff0c;创…

PrestaShop的目录结构详解

admin-dev&#xff1a;这个目录通常包含开发和测试PrestaShop后台时所需的脚本和配置文件。例如&#xff0c;它可能包含用于测试API的脚本或用于在开发过程中快速访问某些后台功能的快捷方式。 app&#xff1a;这个目录是PrestaShop的核心&#xff0c;包含了许多关键的组件。例…

解决HTTP 400 Bad Request错误的方法

解决HTTP 400 Bad Request错误的方法 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; 在进行网络通信时&#xff0c;HTTP 400 Bad Request错误是相对常见的问题…

在Mac上恢复丢失或未保存的Word文档的5种有效方法

“救命&#xff01;我想在Mac上恢复丢失的Word文档。就在 1 小时前&#xff0c;我错误地删除了它们&#xff0c;并清空了垃圾桶。这些Word文档对我来说非常重要。我不知道如何恢复它们&#xff0c;谁能帮我&#xff1f;提前致谢&#xff01; 没有什么比忘记保存 Word 文档或在…

3d模型里地毯的材质怎么赋予?---模大狮模型网

在进行3D建模时&#xff0c;赋予地毯逼真的材质是营造现实感和增强场景氛围的重要步骤。模大狮将介绍在常见的3D建模软件中&#xff0c;如何有效地为地毯赋予各种材质&#xff0c;以及一些实用的技巧和注意事项。 一、选择合适的地毯材质 在3D建模中&#xff0c;地毯的材质选择…