safetylab/ShadowSecurityScanner
GitHub: safetylab/ShadowSecurityScanner
免费的渗透测试与网络漏洞扫描工具,结合 EPSS 和 CISA KEV 对发现结果进行利用概率感知的修复优先级排序。
Stars: 0 | Forks: 0
# ShadowSecurityScanner





**ShadowSecurityScanner** 是一款免费的**渗透测试工具**和**网络漏洞扫描器**。它执行端口扫描、服务和 OS 指纹识别,以及数千种已分类的网络和 Web 检查,然后根据真实的漏洞利用概率对每个发现进行排名——即 **EPSS** (FIRST.org) + **CISA KEV**——而不仅仅是原始的 CVSS。这是一个适用于 **Windows、macOS 和 Linux** 的单一自包含桌面应用程序。无需云服务,无需 agent,无需遥测。
- 🌐 **官网与文档:** https://andriigordiienko.github.io/ShadowSecurityScanner-site/
- 📊 **对比 Nessus 和 OpenVAS:** https://andriigordiienko.github.io/ShadowSecurityScanner-site/compare/
- 📘 **指南:** https://andriigordiienko.github.io/ShadowSecurityScanner-site/guides/
## 下载
从 [**Releases 页面**](https://github.com/safetylab/ShadowSecurityScanner/releases/latest) 获取适用于您平台的最新构建版本:
| 平台 | 文件 |
|---|---|
| Windows (x64) | `ShadowSecurityScanner-windows-amd64.exe` |
| Windows (ARM64) | `ShadowSecurityScanner-windows-arm64.exe` |
| macOS (Apple Silicon) | `ShadowSecurityScanner-macos-arm64.dmg` |
| Linux (x64) | `ShadowSecurityScanner-linux-amd64` |
| Linux (ARM64) | `ShadowSecurityScanner-linux-arm64` |
无需安装程序。在 Linux 上:执行 `chmod +x` 并运行。在 macOS 上:首次启动时,右键点击 → 打开。
## 开源组件
此仓库托管了 ShadowSecurityScanner 的开源、基于 MIT 协议的部分,作为可复用的 Go 包和 CLI。
### `epsskev` — EPSS + CISA KEV 优先级排序
获取任何 CVE 列表的 FIRST.org EPSS 分数和 CISA KEV 状态,并按修复优先级对它们进行排序(`KEV → EPSS → CVSS`)。
```
go install github.com/safetylab/ShadowSecurityScanner/cmd/epss-kev@latest
epss-kev CVE-2021-44228 CVE-2017-0144 CVE-2024-6387
# RANK CVE EPSS KEV PERCENTILE
# 1 CVE-2021-44228 1.00 KEV 100%
# ...
```
```
import epsskev "github.com/safetylab/ShadowSecurityScanner/epsskev"
ranked, _ := epsskev.EnrichAndPrioritise(ctx, epsskev.NewClient(), findings)
```
### `sarif` — 发现结果 → SARIF 2.1.0
将漏洞发现结果转换为用于 GitHub 代码扫描的 SARIF 2.1.0 文档,包含按 CVE 划分的规则、NVD `helpUri` 和 GitHub `security-severity`。
```
go install github.com/safetylab/ShadowSecurityScanner/cmd/vuln-sarif@latest
vuln-sarif < findings.json > results.sarif
```
```
import sarif "github.com/safetylab/ShadowSecurityScanner/sarif"
out, _ := sarif.Marshal(findings, sarif.DefaultTool)
```
### `triage` — 发现结果 → 丰富化 → SARIF(端到端)
读取 JSON 格式的漏洞发现结果(参见 [`findings/findings.schema.json`](findings/findings.schema.json)),使用 EPSS + CISA KEV 对其进行丰富化,按修复优先级排序,并输出排名表或 SARIF 报告。
```
go install github.com/safetylab/ShadowSecurityScanner/cmd/triage@latest
triage < findings.json # ranked table
triage -format sarif < findings.json > results.sarif
```
```
RANK CVE SEVERITY CVSS KEV EPSS
1 CVE-2021-44228 CRITICAL 10.0 KEV 1.00
2 CVE-2017-0144 HIGH 8.1 KEV 0.99
3 CVE-2099-0001 CRITICAL 9.8 - 0.00
```
## 构建库
```
git clone https://github.com/safetylab/ShadowSecurityScanner.git
cd ShadowSecurityScanner
go test ./...
go build ./...
```
## 法律与道德使用
仅供**授权的安全测试**使用——仅扫描您拥有或获得明确许可评估的系统。拒绝服务测试已被特意排除。
## 许可证
[MIT](LICENSE) — © AndriiGordiienko。
标签:EPSS, EVTX分析, Go, Ruby工具, 威胁情报, 实时处理, 密码管理, 开发者工具, 插件系统, 日志审计