jimmy058910/jmo-security-repo

GitHub: jimmy058910/jmo-security-repo

一款编排 28 款安全扫描器的终端优先自动化安全审计框架,提供多目标扫描、统一报告和合规映射能力。

Stars: 6 | Forks: 6

# JMo Security 审计工具套件 ![JMo Security 审计工具套件](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/f789fbd55b124727.png) [![测试](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/cf1b3ebf72124729.svg)](https://github.com/jimmy058910/jmo-security-repo/actions/workflows/ci.yml?query=branch%3Amain) [![codecov](https://codecov.io/gh/jimmy058910/jmo-security-repo/branch/main/graph/badge.svg)](https://app.codecov.io/gh/jimmy058910/jmo-security-repo) [![PyPI 版本](https://img.shields.io/pypi/v/jmo-security.svg)](https://pypi.org/project/jmo-security/) [![Python 版本](https://img.shields.io/pypi/pyversions/jmo-security.svg)](https://pypi.org/project/jmo-security/) [![许可证:MIT OR Apache-2.0](https://img.shields.io/badge/License-MIT%20OR%20Apache--2.0-blue.svg)](https://opensource.org/licenses/MIT) [![Docker 拉取次数](https://img.shields.io/docker/pulls/jmogaming/jmo-security)](https://hub.docker.com/r/jmogaming/jmo-security) [![GitHub Stars](https://img.shields.io/github/stars/jimmy058910/jmo-security-repo?style=social)](https://github.com/jimmy058910/jmo-security-repo) **v1.0.1** | 一款终端优先的安全审计工具包,通过统一的 CLI、标准化输出和交互式 HTML 仪表盘编排了 28 款扫描器。 ## 概述 JMo Security 是一个自动化安全审计框架,用于扫描代码仓库、容器镜像、基础设施即代码、Web 应用程序、GitLab 仓库和 Kubernetes 集群。它通过统一的报告生成和跨工具去重功能,编排了多种行业标准的网络安全工具。 ## 核心功能 - **28 款安全扫描器** - Secrets、SAST、SBOM、SCA、IaC、DAST 等 - **6 种目标类型** - 代码仓库、镜像、IaC 文件、URL、GitLab、Kubernetes - **统一输出** - JSON、SARIF、Markdown、CSV 导出,双模式 HTML 仪表盘 - **跨工具去重** - 减少 30-40% 的噪音 - **SQLite 历史存储** - 通过持久化历史记录随时追踪安全态势 - **机器可读的差异对比** - 比较扫描结果,检测安全回退 - **趋势分析** - Mann-Kendall 统计分析,安全评分 - **策略即代码** - 基于 OPA 的安全策略 - **AI 修复** - 集成 MCP 支持 Copilot/Claude - **SLSA 认证** - 供应链安全合规 - **6 种合规框架** - OWASP、CWE、NIST、PCI DSS、CIS、MITRE ## 快速入门 | 目标 | 操作 | |------|--------| | **立即扫描** | `docker run --rm -v $(pwd):/scan ghcr.io/jimmy058910/jmo-security:latest scan --repo /scan` | | **安装 CLI (Install CLI)** | `pip install jmo-security` | | **引导式设置** | `jmo wizard` | | **完整指南** | [QUICKSTART.md](QUICKSTART.md) | ### 快速示例 ``` # 安装 pip install jmo-security # 扫描 repository jmo scan --repo ./myapp --profile balanced --human-logs # 查看结果 cat results/summaries/SUMMARY.md open results/summaries/dashboard.html ``` ### Docker(零安装) ``` docker pull ghcr.io/jimmy058910/jmo-security:latest docker run --rm -v "$(pwd):/scan" ghcr.io/jimmy058910/jmo-security:latest \ scan --repo /scan --results-dir /scan/results --profile balanced --human-logs ``` ## 安全工具 涵盖 12 个类别的 29 款工具: | 类别 | 工具 | |----------|-------| | **Secrets** | TruffleHog (已验证), Nosey Parker, Semgrep-Secrets | | **SAST** | Semgrep, Bandit, Gosec, Horusec | | **SBOM** | Syft, CDXgen, ScanCode | | **SCA** | Trivy, Grype, Dependency-Check | | **IaC** | Checkov, Checkov-CICD | | **云/CSPM** | Prowler, Kubescape | | **DAST** | OWASP ZAP, Nuclei, Akto | | **Dockerfile/Shell** | Hadolint, ShellCheck | | **恶意软件** | YARA | | **移动端** | MobSF | | **系统** | Lynis | | **策略** | OPA | | **运行时** | Trivy-RBAC, Falco, AFL++ | **工具详情:** [docs/USER_GUIDE.md#tool-overview](docs/USER_GUIDE.md#tool-overview) ## 扫描配置 | 配置 | 工具数 | 耗时 | 适用场景 | |---------|-------|------|----------| | `fast` | 9 | 5-10 分钟 | 提交前检查,PR 验证 | | `slim` | 14 | 12-18 分钟 | 云/IaC,AWS/Azure/GCP/K8s | | `balanced` | 18 | 18-25 分钟 | CI/CD 流水线 | | `deep` | 29 | 40-70 分钟 | 全面审计 | ## 输出格式 所有发现结果均标准化为 CommonFinding schema v1.2.0: | 格式 | 文件 | 适用场景 | |--------|------|----------| | HTML | `dashboard.html` | 交互式可视化仪表盘 | | Markdown | `SUMMARY.md` | 易读的概览报告 | | JSON | `findings.json` | 自动化,脚本编写 | | SARIF | `findings.sarif` | GitHub/GitLab 代码扫描 | | YAML | `findings.yaml` | 替代数据格式 | **示例输出:** [SAMPLE_OUTPUTS.md](docs/SAMPLE_OUTPUTS.md) ## 多目标扫描 在一个统一的工作流中扫描 6 种目标类型: ``` # Repository jmo scan --repo ./myapp # Container image jmo scan --image nginx:latest # IaC 文件 jmo scan --terraform-state terraform.tfstate # Live web app jmo scan --url https://example.com --tools zap # GitLab repos jmo scan --gitlab-group myorg --gitlab-token $TOKEN # Kubernetes cluster jmo scan --k8s-context prod --k8s-all-namespaces # 一次性全部扫描 jmo scan --repo . --image myapp:latest --url https://myapp.com ``` **完整指南:** [docs/USER_GUIDE.md#multi-target-scanning](docs/USER_GUIDE.md#multi-target-scanning) ## 关键命令 ``` # Interactive wizard jmo wizard # 使用 profile 扫描 jmo scan --repos-dir ~/repos --profile balanced # CI 模式 (scan + gate) jmo ci --repo . --fail-on HIGH # Tool 管理 (native installs) jmo tools check --profile balanced # Check tool status jmo tools install --profile balanced # Install missing tools jmo tools update --critical-only # Update critical tools jmo tools outdated # Show outdated tools # 比较扫描 jmo diff baseline/ current/ --format md # 查看历史 jmo history list # 分析趋势 jmo trends analyze --days 30 # 生成报告 jmo report ./results ``` **完整 CLI 参考:** [docs/USER_GUIDE.md](docs/USER_GUIDE.md) ## CI/CD 集成 ### GitHub Actions ``` - name: Security Scan run: | docker run --rm -v ${{ github.workspace }}:/scan \ ghcr.io/jimmy058910/jmo-security:latest \ ci --repo /scan --fail-on HIGH --profile balanced - name: Upload SARIF uses: github/codeql-action/upload-sarif@v2 with: sarif_file: results/summaries/findings.sarif ``` ### GitLab CI ``` security_scan: image: ghcr.io/jimmy058910/jmo-security:latest script: - jmo ci --repo . --fail-on HIGH --profile balanced artifacts: reports: sast: results/summaries/findings.sarif ``` **更多示例:** [docs/examples/](docs/examples/) ## 文档 ### 入门 | 文档 | 用途 | |----------|---------| | [QUICKSTART.md](QUICKSTART.md) | 5 分钟安装指南 | | [docs/DOCKER_README.md](docs/DOCKER_README.md) | Docker 使用指南 | | [docs/USER_GUIDE.md](docs/USER_GUIDE.md) | 综合参考 | ### 功能 | 文档 | 用途 | |----------|---------| | [docs/RESULTS_GUIDE.md](docs/RESULTS_GUIDE.md) | 了解扫描发现 | | [docs/POLICY_AS_CODE.md](docs/POLICY_AS_CODE.md) | OPA 安全策略 | | [docs/SCHEDULE_GUIDE.md](docs/SCHEDULE_GUIDE.md) | 自动化计划任务 | | [docs/MCP_SETUP.md](docs/MCP_SETUP.md) | AI 修复设置 | ### 参考 | 文档 | 用途 | |----------|---------| | [docs/RESULTS_GUIDE.md](docs/RESULTS_GUIDE.md) | 结果与输出格式 | | [docs/API_REFERENCE.md](docs/API_REFERENCE.md) | Python API 文档 | | [CHANGELOG.md](CHANGELOG.md) | 版本历史 | | [ROADMAP.md](ROADMAP.md) | 未来计划 | ### 贡献 | 文档 | 用途 | |----------|---------| | [CONTRIBUTING.md](CONTRIBUTING.md) | 开发环境设置 | | [TEST.md](TEST.md) | 测试指南 | | [docs/RELEASE.md](docs/RELEASE.md) | 发布流程 | **文档中心:** [docs/index.md](docs/index.md) ## 结果结构 ``` results/ ├── individual-repos/ # Repository scans ├── individual-images/ # Container scans ├── individual-iac/ # IaC scans ├── individual-web/ # DAST scans ├── individual-gitlab/ # GitLab scans ├── individual-k8s/ # K8s scans └── summaries/ # Unified reports ├── findings.json ├── SUMMARY.md ├── dashboard.html └── findings.sarif ``` ## 严重性级别 | 级别 | 含义 | 操作 | |-------|---------|--------| | **CRITICAL (严重)** | 已验证的 Secrets,RCE | 立即修复 | | **HIGH (高危)** | SQL 注入,XSS | 1 周内修复 | | **MEDIUM (中危)** | 弱加密,配置错误 | 1 个月内修复 | | **LOW (低危)** | 信息泄露 | 方便时修复 | ## 合规框架 所有发现结果均会使用 6 种框架进行自动丰富: - **OWASP Top 10 2021** - Web 安全类别 - **CWE Top 25 2024** - 常见缺陷类型 - **NIST CSF 2.0** - 风险管理 - **PCI DSS 4.0** - 支付安全 - **CIS Controls v8.1** - 安全最佳实践 - **MITRE ATT&CK** - 攻击技术 ## 故障排除 | 问题 | 解决方案 | |-------|----------| | 找不到工具 | `jmo tools check` 然后 `jmo tools install` | | 工具过期 | `jmo tools update` | | 权限被拒绝 | `chmod +x scripts/**/*.sh` | | Docker 问题 | [docs/DOCKER_README.md#troubleshooting](docs/DOCKER_README.md#troubleshooting) | | CI 失败 | [CONTRIBUTING.md#ci-troubleshooting](CONTRIBUTING.md#ci-troubleshooting) | ## 参与贡献 欢迎参与贡献!有关设置和标准,请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。 ``` git clone https://github.com/jimmy058910/jmo-security-repo.git cd jmo-security-repo pip install -e . make dev-deps make pre-commit-install make test ``` ## 许可证 双重许可:[MIT](LICENSE-MIT) 或 [Apache 2.0](LICENSE-APACHE)。 ## 相关资源 - [TruffleHog](https://github.com/trufflesecurity/trufflehog) - 已验证的 Secrets 扫描 - [Semgrep](https://semgrep.dev) - 多语言 SAST - [Trivy](https://aquasecurity.github.io/trivy/) - 漏洞扫描 - [OWASP ZAP](https://www.zaproxy.org/) - DAST 扫描 **作者:** James Moceri **项目:** | [GitHub](https://github.com/jimmy058910/jmo-security-repo) **最后更新:** 2026 年 3 月
标签:Chrome Headless, CISA项目, DevSecOps, GitLab安全, GPT, GraphQL安全矩阵, HTML仪表盘, IP 地址批量处理, Kubernetes安全, LNA, Python, SBOM, StruQ, Web截图, 上游代理, 代码安全, 动态应用安全测试, 基础设施即代码扫描, 多目标扫描, 安全基线, 安全扫描器, 容器安全, 教学环境, 无后门, 漏洞枚举, 漏洞管理, 硬件无关, 秘密检测, 终端工具, 请求拦截, 跨工具去重, 逆向工具, 静态应用安全测试