AWVS 15漏洞扫描器脚本交互工具

2023-12-04 10:29:53 浏览数 (1)

AWVS-SCAN-Plus 介绍

针对 AWVS 15 版本开发的批量扫描脚本,支持 SpringShelllog4j常见 CVEBug Bounty常见高危SQL 注入XSS 等 专项漏洞的扫描,支持联动 xray、burp、w13scan 等被动批量扫描,灵活自定义扫描模板

AWVS-SCAN-Plus 功能

提示:本项目基于此 awvs15 版本开发,其他版本未测试(理论上都是支持的,自定义扫描模板需要进行单独测试)

支持 AWVS15 版本的 API 接口

  • 支持 URL 批量添加扫描
  • 支持批量仅扫描 apache-log4j 漏洞
  • 支持对批量 url 添加cooKie凭证进行爬虫扫描
  • 支持对批量 url 添加 1 个或多个不同请求头
  • 支持配置上级代理地址,能结合被动扫描器进行配置扫描,如:xray,w13scan,burp等扫描器
  • 支持一键清空所有任务
  • 通过配置config.ini文件,支持自定义各种扫描参数,如:爬虫速度,排除路径(不扫描的目录),全局cookie,限制为仅包含地址和子目录
  • 支持对扫描器内已有目标进行批量扫描,支持自定义扫描类型

基础配置:

  1. 安装基础环境:pip install -r requirements.txt
  2. 配置 config_default.ini 文件里的配置,比如:awvs 的 url、apikey、企业微信机器人 webhook 等,修改完后,将 config_default.ini 文件名改为 config.ini

提示:config.ini 请使用编辑器更改,记事本会改会原有格式

使用方式一:交互式命令行

使用场景:

用于手动交互式进行 AWVS 扫描

使用方式:

python awvs_scan.py

代码语言:javascript复制
********************************************************************
AWVS-SCAN-Plus 批量添加,批量扫描,支持awvs15批量联动被动扫描器等功能
作者微信:BigYoung
Blog: https://sec.bigyoung.cn
********************************************************************
1 【批量添加url到AWVS扫描器扫描】
2 【删除扫描器内所有目标与扫描任务】
3 【删除所有扫描任务(不删除目标)】
4 【对扫描器中已有目标,进行扫描】
5 【高危漏洞消息推送】 企业微信机器人
6 【删除已扫描完成的目标】

请输入数字:1
1 【开始 完全扫描】
2 【开始 扫描高风险漏洞】
3 【开始 扫描XSS漏洞】
4 【开始 扫描SQL注入漏洞】
5 【开始 弱口令检测】
6 【开始 Crawl Only,,建议config.ini配置好上级代理地址,联动被动扫描器】
7 【开始 扫描意软件扫描】
8 【仅添加 目标到扫描器,不做任何扫描】
9 【仅扫描apache-log4j】(请需先确保当前版本已支持log4j扫描,awvs 14.6.211220100及以上)
10 【开始扫描Bug Bounty高频漏洞】
11 【扫描已知漏洞】(常见CVE,POC等)
12 【自定义模板】

请输入数字:?

使用方式二:命令行参数

用于自动化处理场景,通过命令直接调用,无需交互式操作

使用方式:

代码语言:javascript复制
Usage: awvs_cli.py [options]

Options:
  -h, --help            show this help message and exit
  -t TARGET, --target=TARGET
                        Please Enter the AWVS Target, eg: https://test.com
  -f FILE, --file=FILE  Please Enter the url.txt filepath, eg: ./urls.txt
  -m MOD, --mod=MOD     Please Enter Your AWVS Scan mod, eg:
                        查看config.ini配置文件[awvs_mod]配置,有注释说明
  -s SWITCH, --switch=SWITCH
                        是否开启扫描,eg:1:开启扫描,0:不开启扫描, 默认是1
  -l LABEL, --label=LABEL
                        添加扫描任务的目标描述

使用示例:

添加一个目标:

python3 awvs_cli.py -t https://baidu.com -m 1 -l test

批量添加目标:

python3 awvs_cli.py -f ./url.txt -m 1 -l test

[awvs_mod]参数特别说明

1-11 参数两种使用模式都可以直接使用。

12 这个参数,在交互式命令的使用场景下,会要求你手动输入已经在 AWVS 里定义好的模板 profile_id。如果通过方式二使用时,12 这个参数是无效的,如果需要使用自定义 profile_id,使用方式是-m 11111-1111-222-333,直接输入 profile_id 即可。

此工具使用的 AWVS 版本:

代码语言:javascript复制
# 本项目基于此awvs版本开发,其他版本未测试(理论上都是支持的,自定义扫描模板需要进行测试)

docker pull xrsec/awvs:v15

bash <(curl -sLk https://www.fahai.org/aDisk/Awvs/check.sh) xrsec/awvs:v15

访问地址:https://127.0.0.1:3443/#/login

账户:awvs@awvs.lan
密码:Awvs@awvs.lan

版本更新记录

V1.0.0 @2023-11-28

提示:此版本基于awvs14-scan开发,感谢原作者的开源分享

  • 重构代码结构、优化代码逻辑

V1.1.0 @2023-11-30

  • 增加命令行参数形式,运行脚本,方便脚本自动化调用

TODO

  • 【已完成】增加命令行参数形式,运行脚本,方便脚本自动化调用
  • [ ] 增加导出报告功能
  • [ ] 漏洞通知增加多渠道:飞书、钉钉
  • [ ] 增加漏洞信息推送到 webhook 接口,方便漏洞自动化录入漏洞管理平台

0 人点赞