ArrafiNurHafiz/scanner-vulnerability

GitHub: ArrafiNurHafiz/scanner-vulnerability

一款基于 Rust 的模块化漏洞扫描编排工具,通过并行调度多个开源安全工具实现对供应链、SAST、密钥泄露和容器镜像的统一扫描与报告。

Stars: 0 | Forks: 0


                                    _   _       _ _   _           _   _

  ___  _ __   ___ _   _ _ __  __ _| | | |_   _| | | | |__  _   _| |_| |__

 / _ \| '_ \ / _ \ | | | '_ \/ _` | | | \ \ / / | | | '_ \| | | | __| '_ \

| (_) | |_) |  __/ |_| | | | | (_| | | | |\ V /| | | | | | | |_| | |_| | | |

 \___/| .__/ \___|\__,_|_| |_|\__,_|_| |_| \_/ |_|_| |_| |_|\__,_|\__|_| |_|

      |_|

自主漏洞扫描器
CLI 优先。并行。模块化。开源。

Rust License Status Scanners

## ✦ 功能 - **并行 4 个扫描器** — 供应链、SAST、secrets、容器 - **基于 trait 的架构** — 无需修改核心即可接入新扫描器 - **多报告输出** — JSON 机器输出 + 深色 HTML 仪表盘 - **零依赖** 工具编排 — 原生工具直接管道传输,从不重复造轮子 - **彩色终端** — 一目了然的严重性分级输出 ## ✦ 快速开始 ``` # 初始化项目工作区 openvulnhub init # 全量扫描当前目录 openvulnhub scan --all # Container image 扫描 openvulnhub scan --container --image alpine:latest # 从最新扫描生成 HTML 报告 openvulnhub report --format html ``` ## ✦ 扫描器矩阵 ``` ┌────────────────┬──────────────────┬──────────────────────────────────┐ │ Scanner │ Tool │ Detects │ ├────────────────┼──────────────────┼──────────────────────────────────┤ │ Supply Chain │ Syft + Grype │ npm, pip, gem, cargo vulns │ │ SAST │ Semgrep │ Code quality, injection, XSS │ │ Secrets │ TruffleHog / │ API keys, tokens, credentials │ │ │ Gitleaks │ │ │ Container │ Trivy │ OS package CVEs, misconfigs │ └────────────────┴──────────────────┴──────────────────────────────────┘ ``` ## ✦ 架构 ``` src/ ├── main.rs Entry point + scan orchestrator ├── cli.rs Clap CLI definitions ├── report.rs JSON + HTML report generator └── scanner/ ├── mod.rs Scanner trait, Finding, ScanReport ├── supply_chain.rs ├── sast.rs ├── secrets.rs ├── container.rs ``` 每个扫描器都实现了 `Scanner` trait: ``` #[async_trait] pub trait Scanner: Send + Sync { fn name(&self) -> &'static str; fn is_installed(&self) -> bool; async fn run(&self, target: &ScanTarget) -> Result>; } ``` ## ✦ 安装依赖 ``` # Supply chain curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh -s -- -b /usr/local/bin # SAST pip install semgrep # Secrets(两者皆可) curl -sSfL https://raw.githubusercontent.com/trufflesecurity/trufflehog/main/scripts/install.sh | sh -s -- -b /usr/local/bin brew install gitleaks # macOS # Container curl -sfL https://raw.githubusercontent.com/aquasecurity/trivy/main/contrib/install.sh | sh -s -- -b /usr/local/bin ``` ## ✦ 路线图 ``` P1 ── DAST (Nuclei) ─ IaC (Checkov) ─ Config file ─ Multiple formats P2 ── AI swarm agents ─ P2P mesh ─ Real-time collaboration P3 ── Predictive engine ─ Blockchain SBOM ─ DFIR ``` ## ✦ 许可证 MIT
标签:AI应用开发, Rust, Web截图, 可视化界面, 容器安全, 网络流量审计, 自动化漏洞扫描, 软件供应链安全, 远程方法调用, 通知系统, 静态应用安全测试(SAST)