漏洞扫描

[!NOTE]

xray(网站sql注入,命令执行,xss….)+RAD

图形化GOBY 信息收集,扫描端口,爆破服务弱口令,漏洞扫描,插件

nuclei 历史漏洞(8000+ 历史漏洞的POC【漏洞检测脚本】)

XRAY

检测速度快;支持范围广;代码质量高;高级可定制;安全无威胁;(长亭

1
2
git地址:https://github.com/chaitin/xray
官方文档:https://docs.xray.cool/#/

破解社区版

1
2
3
4
5
6
7
8
9
10
010editor:crtl+f;搜索修改以下内容
43 4F 4D 4D 55 4E 49 54 59
434F4D4D554E495459
COMMUNITY

41 4F 4D 4D 55 4E 49 54 59
AOMMUNITY

41 44 56 41 4E 43 45 44 44
ADVANCEDD

使用

1
2
3
4
5
# 完整
xray.exe webscan --basic-crawler http://testphp.vulnweb.com/ --html-output vulnweb.com-1.html

# 简化
xray.exe ws --basic http://testphp.vulnweb.com/ --ho vulnweb.com-2.html

和bp一起:

1
2
3
先生成证书:
xray.exe genca
安装证书到本地计算机

image-20240605204425187

1
2
3
4
5
开启监听:
# 完整
xray.exe webscan --listen 127.0.0.1:7777 --html-output testphp.html
# 简化
xray.exe ws --listen 127.0.0.1:7777 --ho testphp.html

浏览器设置代理:

image-20240605202501172

浏览器访问就能对站点进行扫描。

如果和bp一起就要到settings->Network->Connections->Upstream Proxy Servers->Add;操作如图

image-20240605202841547

1
xray.exe ws --listen 127.0.0.1:7777 --ho test.html

rad联动xray:

爬虫工具配合xray;

1
2
3
xray.exe ws --listen 127.0.0.1:7777 --ho proxy.html

rad -t http://testphp.vulnweb.com/ --http-proxy 127.0.0.1:7777

高级版xray

1
xray ws --browser-crawler http://testphp.vulnweb.com/ --ho vuln.html

poc检测;编写可以去找官方文档

1
xray ws -p mypocs/poc-yaml-用友NC-bsh.servlet.BshServlet.yml -uf url.txt --ho yongyou-nc.html

Goby

网络测试安全工具,Zwell打造

使用and扫描:

可以联动xray:

1
需要将配置文件复制到goby目录

Nuclei

基于YAML的DSL的快速且可定制的漏洞扫描器;基于模版跨目标发送请求

1
https://gitee.com/yijingsec/nuclei/releases
1
2
更新漏洞模版
nuclei -update-templates
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
基本指令
# nuclei -h

用法:
nuclei [命令]

命令:
目标:
-u, -target string[] 指定扫描的URL/主机
-l, -list string 指定需要扫描的URL/主机文件(一行一个)

模板:
-t, -templates string[] 指定需要扫描的模板或者模板的路径
-nt, -new-templates 只扫描最新版本中添加的模板
-w, -workflows string[] 指定扫描中的工作流或者工作流目录
-validate 验证通过的模板
-tl 列出所有可用的模板

过滤:
-tags string[] 执行有标记的模板子集
-etags, -exclude-tags string[] 执行标记为排除的模板
-itags, -include-tags string[] 不执行具有攻击性的模板
-et, -exclude-templates string[] 要排除的模板或者模板目录
-it, -include-templates string[] 执行默认或配置中排除的模板
-s, -severity value[] 根据严重程度运行模板,可候选的值有:info,low,medium,high,critical
-es, -exclude-severity value[] 根据严重程度排除模板,可候选的值有:info,low,medium,high,critical
-a, -author string[] 执行指定作者的模板

输出:
-o, -output string
输出发现的问题到文件
-silent 只显示结果
-nc, -no-color 禁用输出内容着色(ANSI转义码)
-json 输出为jsonL(ines)
-irr, -include-rr 在JSONL中输出对应的请求和相应(仅结果)
-nm, -no-meta 不显示匹配的元数据
-nts, -no-timestamp 不在输出中显示时间戳
-rdb, -report-db string 本地的Nuclei结果数据库(始终使用该数据库保存结果)
-me, -markdown-export string 以markdown导出结果
-se, -sarif-export string 以SARIF导出结果

配置:
-config string 指定Nuclei的配置文件
-rc, -report-config string 指定Nuclei报告模板文件
-H, -header string[] 指定报告中的标题:value格式
-V, -var value 通过var=value指定var值
-r, -resolvers string 指定Nuclei的解析文件
-sr, -system-resolvers 当DNS错误时使用系统DNS
-passive 启用被动扫描处理HTTP响应
-ev, env-vars 在模板中使用环境变量

交互:
-inserver, -ineractsh-server string 使用interactsh反连检测平台(默认为"https://interact.sh")
-itoken, -interactsh-token string 指定反连检测平台的身份凭证
-interactions-cache-size int 指定保存在交互缓存中的请求数(默认:5000)
-interactions-eviction int 从缓存中删除请求前等待的时间(默认为60秒)
-interactions-poll-duration int 每个轮询前等待时间(默认为5秒)
-interactions-cooldown-period int 退出轮询前的等待时间(默认为5秒)
-ni, -no-interactsh 禁用反连检测平台,同时排除基于反连检测的模板

限速:
-r1, -rate-limit int 每秒最大请求量(默认:150)
-rlm, -rate-limit-minute int 每分钟最大请求量
-bs, -bulk-size int 每个模板最大并行检测数(默认:25)
-c, -concurrency int 并行执行的最大模板数量(默认:25)


优化:
-timeout int 超时时间(默认为5秒)
-retries int 重试次数(默认:1)
-mhe, -max-host-error int 某主机扫描失败次数,跳过该主机(默认:30)
-project 使用项目文件夹避免多次发送同一请求
-project-path string 设置特定的项目文件夹
-spm, -stop-at-first-path 得到一个结果后停止(或许会中断模板和工作流的逻辑)
-stream 流模式 - 在不整理输入的情况下详细描述

无界面浏览器:
-headless 启用需要无界面浏览器的模板
-page-timeout int 在无界面下超时秒数(默认:20)
-sb, -show-brower 在无界面浏览器运行模板时,显示浏览器
-sc, -system-chrome 不使用Nuclei自带的浏览器,使用本地浏览器

调试:
-debug 显示所有请求和响应
-debug-req 显示所有请求
-debug-resp 显示所有响应
-proxy, -proxy-url string 使用HTTP代理
-proxy-socks-url string 使用SOCK5代理
-tlog, -trace-log string 写入请求日志到文件
-version 显示版本信息
-v, -verbose 显示详细信息
-vv 显示额外的详细信息
-tv, -templates-version 显示已安装的模板版本

升级:
-update 更新Nuclei到最新版本
-ut, -update-templates 更新Nuclei模板到最新版
-ud, -update-directory string 覆盖安装模板
-duc, -disable-update-check 禁用更新

统计:
-stats 显示正在扫描的统计信息
-sj, -stats-json 将统计信息以JSONL格式输出到文件
-si, -stats-inerval int 显示统计信息更新的间隔秒数(默认:5)
-m, -metrics 显示Nuclei端口信息
-mp, -metrics-port int 更改Nuclei默认端口(默认:9092)

扫描常见参数

1
2
3
4
5
6
7
8
9
10
11
扫描单个目标
nuclei -u <url>
扫描多个目标
nuclei -l <list.txt>
指定模版
nuclei -u <url> -t <poc.yaml/poc_dir>
扫描结果输出
nuclei -u <url> -o <results.txt>
nuclei -u <url> -o <results.json> -json -irr
调试模版
nuclei -u <url> -debug -t <poc.yaml>

模版编写

1
https://nuclei.projectdiscovery.io/templating-guide/