GhostTroops/scan4all
GitHub: GhostTroops/scan4all
一款集成多种扫描引擎和海量 PoC 的全自动化红队漏洞扫描工具,覆盖端口扫描、指纹识别、密码爆破和漏洞验证全流程。
Stars: 6147 | Forks: 719
[](https://twitter.com/intent/follow?screen_name=Hktalent3135773) [](https://twitter.com/intent/follow?screen_name=Hktalent3135773) [](https://github.com/hktalent/) 💬
- 免费的单个 ID 多目标 web netcat 反向 shell
- scan4all 是什么:集成了 vscan、nuclei、ksubdomain、subfinder 等,全自动化且智能化。红队工具
针对这些集成的项目,进行了代码级别的优化、参数优化以及个别模块(例如 vscan 的 filefuzz)的重写。
原则上不重复造轮子,除非存在 bug 或问题
- 跨平台:基于 golang 实现,轻量级、高度可定制、开源,支持 Linux、windows、mac os 等。
- 支持 [23] 种密码爆破,支持自定义字典,通过 "priorityNmap": true 开启
* RDP
* VNC
* SSH
* Socks5
* rsh-spx
* Mysql
* MsSql
* Oracle
* Postgresql
* Redis
* FTP
* Mongodb
* SMB,同时检测 MS17-010 (CVE-2017-0143, CVE-2017-0144, CVE-2017-0145, CVE-2017-0146, CVE-2017-0147, CVE-2017-0148)、SmbGhost (CVE- 2020-0796)
* Telnet
* Snmp
* Wap-wsp (Elasticsearch)
* RouterOs
* HTTP BasicAuth(Authorization),包含 Webdav、SVN(Apache Subversion)破解
* Weblogic,同时通过 enableNuclei=true 开启 nuclei,支持 T3、IIOP 等检测
* Tomcat
* Jboss
* Winrm(wsman)
* POP3/POP3S
- 默认开启 HTTP 密码智能爆破,当需要 HTTP 密码时会自动激活,无需人工干预
- 检测系统中是否存在 nmap,并通过 priorityNmap=true 开启 nmap 进行快速扫描(默认开启),优化后的 nmap 参数比 masscan 更快
使用 nmap 的缺点:在网络状况不佳时,由于流量网络数据包过大,可能会导致结果不完整
额外使用 nmap 需要将 root 密码设置到环境变量中
```
export PPSSWWDD=yourRootPswd
```
更多参考:config/doNmapScan.sh
默认情况下,使用 naabu 来完成端口扫描 -stats=true 查看扫描进度
我可以不扫描端口吗?
```
noScan=true ./scan4all -l list.txt -v
# nmap 结果默认 noScan=true
./scan4all -l nmapRssuilt.xml -v
```
- 快速的 15000+ POC 检测能力,PoCs 包含:
* nuclei POC
Nuclei Templates 前 10 项统计
| TAG | COUNT | AUTHOR | COUNT | DIRECTORY | COUNT | SEVERITY | COUNT | TYPE | COUNT |
|-----------|-------|---------------|-------|------------------|-------|----------|-------|---------|-------|
| cve | 1430 | daffainfo | 631 | cves | 1407 | info | 1474 | http | 3858 |
| panel | 655 | dhiyaneshdk | 584 | exposed-panels | 662 | high | 1009 | file | 76 |
| edb | 563 | pikpikcu | 329 | vulnerabilities | 509 | medium | 818 | network | 51 |
| lfi | 509 | pdteam | 269 | technologies | 282 | critical | 478 | dns | 17 |
| xss | 491 | geeknik | 187 | exposures | 275 | low | 225 | | |
| wordpress | 419 | dwisiswant0 | 169 | misconfiguration | 237 | unknown | 11 | | |
| exposure | 407 | 0x_akoko | 165 | token-spray | 230 | | | | |
| cve2021 | 352 | princechaddha | 151 | workflows | 189 | | | | |
| rce | 337 | ritikchaddha | 137 | default-logins | 103 | | | | |
| wp-plugin | 316 | pussycat0x | 133 | file | 76 | | | | |
**281 个目录,3922 个文件**。
* vscan POC
* vscan POC 包含:xray 2.0 300+ POC、go POC 等。
* scan4all POC
- 支持 7000+ web 指纹扫描、识别:
* httpx 指纹
* vscan 指纹
* vscan 指纹:包含 eHoleFinger、localFinger 等。
* scan4all 指纹
- 支持 146 种协议和 90000+ 规则的端口扫描
* 依赖于 nmap 支持的协议和指纹
- 快速的 HTTP 敏感文件检测,可自定义字典
- 登录页面检测
- 支持多种输入类型 - STDIN/HOST/IP/CIDR/URL/TXT
- 支持多种输出类型 - JSON/TXT/CSV/STDOUT
- 高度可集成:支持配置将结果统一存储到 Elasticsearch [强烈推荐]
- 智能 SSL 分析:
* 深入分析,自动关联 SSL 信息中的域名扫描,例如 *.xxx.com,并根据配置完成子域名遍历,结果会自动将目标添加到扫描列表中
* 支持在智能 SSL 信息中开启 *.xx.com 子域名遍历功能,通过 export EnableSubfinder=true 开启,或在配置文件中调整
- 自动识别一个域名(DNS)关联多个 IP 的情况,并自动扫描关联的多个 IP
- 智能处理:
* 1. 当列表中多个域名的 IP 相同时,合并端口扫描以提高效率
* 2. 智能处理 http 异常页面,以及指纹计算与学习
- 自动化的供应链识别、分析和扫描
- 联动 python3 log4j-scan
* 本版本阻止了将你的目标信息传递给 DNS Log Server 的 bug,避免暴露漏洞
* 增加了将结果发送到 Elasticsearch 进行批量、盲打的能力
* 未来会有时间实现 golang 版本
如何使用?
```
mkdir ~/MyWork/;cd ~/MyWork/;git clone https://github.com/hktalent/log4j-scan
```
- 智能识别蜜罐并跳过目标。默认禁用此功能。你可以设置 EnableHoneyportDetection=true 来开启
- 高度可定制:允许通过 config/config.json 配置定义你自己的字典,或控制更多细节,包括但不限于:nuclei、httpx、naabu 等。
- 支持 HTTP Request Smuggling:CL-TE、TE-CL、TE-TE、CL_CL、BaseErr
- 支持通过参数 Cookie='PHPSession=xxxx' ./scan4all -host xxxx.com,兼容 nuclei、httpx、go-poc、x-ray POC、filefuzz、http Smuggling
# 工作流程
# 如何安装
从此处下载
Releases
```
go install github.com/GhostTroops/scan4all@2.8.9
scan4all -h
```
# 如何使用
- 1. 启动 Elasticsearch,当然你也可以使用传统方式来输出结果
```
mkdir -p logs data
docker run --restart=always --ulimit nofile=65536:65536 -p 9200:9200 -p 9300:9300 -d --name es -v $PWD/logs:/usr/share/elasticsearch/logs -v $PWD /config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v $PWD/config/jvm.options:/usr/share/elasticsearch/config/jvm.options -v $PWD/data:/ usr/share/elasticsearch/data hktalent/elasticsearch:7.16.2
# 初始化 es index,每个 tool 的结果结构不同,分别进行存储
./config/initEs.sh
# 搜索语法,更多查询方法,自行学习 Elasticsearch
http://127.0.0.1:9200/nmap_index/_doc/_search?q=_id:192.168.0.111
where 92.168.0.111 is the target to query
```
- 使用前请自行安装 nmap
使用帮助
```
go build
# 精确扫描 szUrl 列表 UrlPrecise=true
UrlPrecise=true ./scan4all -l xx.txt
# 禁用对 nmap 的适配,使用 naabu port 扫描其内部定义的与 http 相关的 Ports
priorityNmap=false ./scan4all -tp http -list allOut.txt -v
```
# 工作计划
- 集成 web-cache-vulnerability-scanner 以实现 HTTP 走私和缓存中毒检测
- 与 metasploit-framework 联动,在系统已安装的前提下,配合 tmux,并以 macos 环境下的联动作为最佳实践
- 集成更多的 fuzzer ,例如联动 sqlmap
- 集成 chromedp 以实现落地页的截图、检测纯 js 和 js 架构的前端落地页,以及相应的爬虫(敏感信息检测、页面抓取)
- 集成 nmap-go 以提高执行效率,动态解析结果流,并将其集成到当前任务瀑布流中
- 集成 ksubdomain 以实现更快的子域名爆破
- 集成 spider 以发现更多的 bug
- 半自动指纹学习以提高准确性;指定指纹名称,进行配置
# 问答
- 如何使用 Cookie?
- libpcap 相关问题
更多请见:discussions
# 参考文献
- https://www.77169.net/html/312916.html
- https://zhuanlan.zhihu.com/p/636131542
- https://github.com/GhostTroops/scan4all/blob/main/static/Installation.md
- https://github.com/GhostTroops/scan4all/blob/main/static/NicePwn.md
- https://github.com/GhostTroops/scan4all/blob/main/static/running.md
- https://www.google.com/search?client=safari&rls=en&q=%22hktalent%22+%22scan4all%22&ie=UTF-8&oe=UTF-8#ip=1
# 更新日志
- 2023-10-01 优化对 nuclei@latest 的支持
- 2022-07-28 由我添加 substr 和 aes_cbc dsl helper 到 nuclei v2.7.7
- 2022-07-20 修复并 PR nuclei #2301 并发多实例 bug
- 2022-07-20 添加 web cache vulnerability scanner
- 2022-07-19 PR nuclei #2308 添加 dsl 函数:substr aes_cbc
- 2022-07-19 添加 dcom 协议枚举网络接口
- 2022-06-30 嵌入式集成私有版本 nuclei-templates 共计 3744 个 YAML POC;1. 集成 Elasticsearch 存储中间结果 2. 将整个 config 目录嵌入程序中
- 2022-06-27 优化模糊匹配以提高准确性和鲁棒性;集成 ksubdomain 进度
- 2022-06-24 优化指纹算法;添加工作流程图
- 2022-06-23 新增参数 ParseSSl 控制默认不深度分析 SSL 中的 DNS 信息,默认不扫描 SSL 中的 DNS;优化:nmap 不自动添加 .exe 的 bug;优化 Windows 下缓存文件不优化大小的 bug
- 2022-06-22 集成了 11 种协议的弱密码检测和密码爆破:ftp、mongodb、mssql、mysql、oracle、postgresql、rdp、redis、smb、ssh、telnet,并优化了对插件密码字典的支持
- 2022-06-20 集成 Subfinder,域名爆破,启动参数 export EnableSubfinder=true,注意启动后会非常慢;ssl 证书中域名信息的自动深钻允许你通过 config/config.json 配置定义你自己的字典,或设置相关开关
- 2022-06-17 优化一个域名对应多个 IP 的情况。所有的 IP 都会进行端口扫描,然后再进行后续的扫描流程。
- 2022-06-15 本版本添加了几个过去实战中获取的 weblogic 密码字典和 webshell 字典
- 2022-0610 完成核心的集成,当然也包括核心模板的集成
- 2022-06-07 添加相似度算法来检测 404
- 2022-06-07 新增 http url 列表精确扫描参数,根据环境变量 UrlPrecise=true 开启
# 交流群 (微信, QQ,Tg)
| 微信 | 或者 | QQ群 | 或者 | Tg |
| --- |--- |--- |--- |--- |
|
||
||
|
## 💖Star
[](https://starchart.cc/hktalent/scan4all)
# 捐赠
| 微信支付 | 支付宝 | Paypal | BTC 支付 |BCH 支付 |
| --- | --- | --- | --- | --- |
|
|
|[paypal](https://www.paypal.me/pwned2019) **miracletalent@gmail.com**|
|
|
README_中文 • 编译/安装/运行 • 参数说明 • 使用方法 • 应用场景 • POC 列表 • 自定义扫描 • 最佳实践
# 功能特性
- 快速的 15000+ POC 检测能力,PoCs 包含:
* nuclei POC
Nuclei Templates 前 10 项统计
| TAG | COUNT | AUTHOR | COUNT | DIRECTORY | COUNT | SEVERITY | COUNT | TYPE | COUNT |
|-----------|-------|---------------|-------|------------------|-------|----------|-------|---------|-------|
| cve | 1430 | daffainfo | 631 | cves | 1407 | info | 1474 | http | 3858 |
| panel | 655 | dhiyaneshdk | 584 | exposed-panels | 662 | high | 1009 | file | 76 |
| edb | 563 | pikpikcu | 329 | vulnerabilities | 509 | medium | 818 | network | 51 |
| lfi | 509 | pdteam | 269 | technologies | 282 | critical | 478 | dns | 17 |
| xss | 491 | geeknik | 187 | exposures | 275 | low | 225 | | |
| wordpress | 419 | dwisiswant0 | 169 | misconfiguration | 237 | unknown | 11 | | |
| exposure | 407 | 0x_akoko | 165 | token-spray | 230 | | | | |
| cve2021 | 352 | princechaddha | 151 | workflows | 189 | | | | |
| rce | 337 | ritikchaddha | 137 | default-logins | 103 | | | | |
| wp-plugin | 316 | pussycat0x | 133 | file | 76 | | | | |
**281 个目录,3922 个文件**。
* vscan POC
* vscan POC 包含:xray 2.0 300+ POC、go POC 等。
* scan4all POC
- 支持 7000+ web 指纹扫描、识别:
* httpx 指纹
* vscan 指纹
* vscan 指纹:包含 eHoleFinger、localFinger 等。
* scan4all 指纹
- 支持 146 种协议和 90000+ 规则的端口扫描
* 依赖于 nmap 支持的协议和指纹
- 快速的 HTTP 敏感文件检测,可自定义字典
- 登录页面检测
- 支持多种输入类型 - STDIN/HOST/IP/CIDR/URL/TXT
- 支持多种输出类型 - JSON/TXT/CSV/STDOUT
- 高度可集成:支持配置将结果统一存储到 Elasticsearch [强烈推荐]
- 智能 SSL 分析:
* 深入分析,自动关联 SSL 信息中的域名扫描,例如 *.xxx.com,并根据配置完成子域名遍历,结果会自动将目标添加到扫描列表中
* 支持在智能 SSL 信息中开启 *.xx.com 子域名遍历功能,通过 export EnableSubfinder=true 开启,或在配置文件中调整
- 自动识别一个域名(DNS)关联多个 IP 的情况,并自动扫描关联的多个 IP
- 智能处理:
* 1. 当列表中多个域名的 IP 相同时,合并端口扫描以提高效率
* 2. 智能处理 http 异常页面,以及指纹计算与学习
- 自动化的供应链识别、分析和扫描
- 联动 python3 log4j-scan
* 本版本阻止了将你的目标信息传递给 DNS Log Server 的 bug,避免暴露漏洞
* 增加了将结果发送到 Elasticsearch 进行批量、盲打的能力
* 未来会有时间实现 golang 版本
如何使用?
```
mkdir ~/MyWork/;cd ~/MyWork/;git clone https://github.com/hktalent/log4j-scan
```
- 智能识别蜜罐并跳过目标。默认禁用此功能。你可以设置 EnableHoneyportDetection=true 来开启
- 高度可定制:允许通过 config/config.json 配置定义你自己的字典,或控制更多细节,包括但不限于:nuclei、httpx、naabu 等。
- 支持 HTTP Request Smuggling:CL-TE、TE-CL、TE-TE、CL_CL、BaseErr
- 支持通过参数 Cookie='PHPSession=xxxx' ./scan4all -host xxxx.com,兼容 nuclei、httpx、go-poc、x-ray POC、filefuzz、http Smuggling
# 工作流程
# 如何安装
从此处下载
Releases
```
go install github.com/GhostTroops/scan4all@2.8.9
scan4all -h
```
# 如何使用
- 1. 启动 Elasticsearch,当然你也可以使用传统方式来输出结果
```
mkdir -p logs data
docker run --restart=always --ulimit nofile=65536:65536 -p 9200:9200 -p 9300:9300 -d --name es -v $PWD/logs:/usr/share/elasticsearch/logs -v $PWD /config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml -v $PWD/config/jvm.options:/usr/share/elasticsearch/config/jvm.options -v $PWD/data:/ usr/share/elasticsearch/data hktalent/elasticsearch:7.16.2
# 初始化 es index,每个 tool 的结果结构不同,分别进行存储
./config/initEs.sh
# 搜索语法,更多查询方法,自行学习 Elasticsearch
http://127.0.0.1:9200/nmap_index/_doc/_search?q=_id:192.168.0.111
where 92.168.0.111 is the target to query
```
- 使用前请自行安装 nmap
使用帮助
```
go build
# 精确扫描 szUrl 列表 UrlPrecise=true
UrlPrecise=true ./scan4all -l xx.txt
# 禁用对 nmap 的适配,使用 naabu port 扫描其内部定义的与 http 相关的 Ports
priorityNmap=false ./scan4all -tp http -list allOut.txt -v
```
# 工作计划
- 集成 web-cache-vulnerability-scanner 以实现 HTTP 走私和缓存中毒检测
- 与 metasploit-framework 联动,在系统已安装的前提下,配合 tmux,并以 macos 环境下的联动作为最佳实践
- 集成更多的 fuzzer ,例如联动 sqlmap
- 集成 chromedp 以实现落地页的截图、检测纯 js 和 js 架构的前端落地页,以及相应的爬虫(敏感信息检测、页面抓取)
- 集成 nmap-go 以提高执行效率,动态解析结果流,并将其集成到当前任务瀑布流中
- 集成 ksubdomain 以实现更快的子域名爆破
- 集成 spider 以发现更多的 bug
- 半自动指纹学习以提高准确性;指定指纹名称,进行配置
# 问答
- 如何使用 Cookie?
- libpcap 相关问题
更多请见:discussions
# 参考文献
- https://www.77169.net/html/312916.html
- https://zhuanlan.zhihu.com/p/636131542
- https://github.com/GhostTroops/scan4all/blob/main/static/Installation.md
- https://github.com/GhostTroops/scan4all/blob/main/static/NicePwn.md
- https://github.com/GhostTroops/scan4all/blob/main/static/running.md
- https://www.google.com/search?client=safari&rls=en&q=%22hktalent%22+%22scan4all%22&ie=UTF-8&oe=UTF-8#ip=1
# 更新日志
- 2023-10-01 优化对 nuclei@latest 的支持
- 2022-07-28 由我添加 substr 和 aes_cbc dsl helper 到 nuclei v2.7.7
- 2022-07-20 修复并 PR nuclei #2301 并发多实例 bug
- 2022-07-20 添加 web cache vulnerability scanner
- 2022-07-19 PR nuclei #2308 添加 dsl 函数:substr aes_cbc
- 2022-07-19 添加 dcom 协议枚举网络接口
- 2022-06-30 嵌入式集成私有版本 nuclei-templates 共计 3744 个 YAML POC;1. 集成 Elasticsearch 存储中间结果 2. 将整个 config 目录嵌入程序中
- 2022-06-27 优化模糊匹配以提高准确性和鲁棒性;集成 ksubdomain 进度
- 2022-06-24 优化指纹算法;添加工作流程图
- 2022-06-23 新增参数 ParseSSl 控制默认不深度分析 SSL 中的 DNS 信息,默认不扫描 SSL 中的 DNS;优化:nmap 不自动添加 .exe 的 bug;优化 Windows 下缓存文件不优化大小的 bug
- 2022-06-22 集成了 11 种协议的弱密码检测和密码爆破:ftp、mongodb、mssql、mysql、oracle、postgresql、rdp、redis、smb、ssh、telnet,并优化了对插件密码字典的支持
- 2022-06-20 集成 Subfinder,域名爆破,启动参数 export EnableSubfinder=true,注意启动后会非常慢;ssl 证书中域名信息的自动深钻允许你通过 config/config.json 配置定义你自己的字典,或设置相关开关
- 2022-06-17 优化一个域名对应多个 IP 的情况。所有的 IP 都会进行端口扫描,然后再进行后续的扫描流程。
- 2022-06-15 本版本添加了几个过去实战中获取的 weblogic 密码字典和 webshell 字典
- 2022-0610 完成核心的集成,当然也包括核心模板的集成
- 2022-06-07 添加相似度算法来检测 404
- 2022-06-07 新增 http url 列表精确扫描参数,根据环境变量 UrlPrecise=true 开启
# 交流群 (微信, QQ,Tg)
| 微信 | 或者 | QQ群 | 或者 | Tg |
| --- |--- |--- |--- |--- |
|
||
|
## 💖Star
[](https://starchart.cc/hktalent/scan4all)
# 捐赠
| 微信支付 | 支付宝 | Paypal | BTC 支付 |BCH 支付 |
| --- | --- | --- | --- | --- |
|
|
|[paypal](https://www.paypal.me/pwned2019) **miracletalent@gmail.com**|
|
|标签:CISA项目, CTI, EVTX分析, Go语言, XXE攻击, 动态插桩, 密码爆破, 插件系统, 日志审计, 程序破解, 请求拦截