PrecogsAI/precogs-action

GitHub: PrecogsAI/precogs-action

面向 GitHub Actions 的 AI 安全扫描器,在 CI/CD 流程中自动检测密钥泄露、个人隐私信息、依赖项漏洞和代码安全问题。

Stars: 2 | Forks: 0

# ⚡ Precogs 安全扫描 AI 驱动的安全扫描器,可查找代码中的漏洞、密钥、个人身份信息 (PII) 和不安全的依赖项。 **包含免费的密钥和依赖项扫描** — 无需 API 密钥。 [![GitHub Marketplace](https://img.shields.io/badge/Marketplace-Precogs%20AI%20Security%20Scan-purple?style=for-the-badge&logo=github)](https://github.com/marketplace/actions/precogs-ai-security-scan) ## 🚀 快速入门 ### 免费版 — 密钥、PII 和依赖项扫描(无需 API 密钥) ``` name: Security Scan on: [push, pull_request] jobs: precogs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: PrecogsAI/precogs-action@v1 ``` 就是这样。它可以查找硬编码的密钥、API 密钥、PII、易受攻击的依赖项(通过 OSV.dev)以及私钥。 ### 专业版 — 完整安全套件(使用 API 密钥) ``` name: Security Scan on: [push, pull_request] jobs: precogs: runs-on: ubuntu-latest steps: - uses: actions/checkout@v4 - uses: precogs-ai/precogs-action@v1 with: api-key: ${{ secrets.PRECOGS_API_KEY }} severity-threshold: high sarif-output: precogs-results.sarif # Upload results to GitHub Code Scanning - uses: github/codeql-action/upload-sarif@v3 if: always() with: sarif_file: precogs-results.sarif ``` 在 [app.precogs.ai](https://app.precogs.ai) 获取您的 API 密钥。 ## 🔍 扫描范围 | 扫描器 | 免费版 | 专业版 | 发现内容 | |---|:--:|:--:|---| | **密钥** | ✅ | ✅ | AWS 密钥、GitHub token、Stripe 密钥、私钥、数据库 URL、JWT token 等 20 多种模式 | | **PII** | ✅ | ✅ | 电子邮件地址、社会安全号码 (SSN)、信用卡号、电话号码 | | **依赖项 (SCA)** | ✅ | ✅ | npm、pip、Go、Ruby 和 Rust 包中的已知 CVE(通过 [OSV.dev](https://osv.dev)) | | **代码 (SAST)** | — | ✅ | SQL 注入、XSS、命令注入、路径遍历、不安全的加密以及 200 多种漏洞模式 | ### 密钥检测模式 - AWS 访问密钥和秘密密钥 - GitHub 个人访问令牌 (PAT、OAuth、App) - Google Cloud / GCP API 密钥和服务帐户文件 - Stripe 密钥和可发布密钥 (live) - Slack Token 和 Webhook URL - SendGrid API 密钥 - Twilio API 密钥 - OpenAI API 密钥 - 数据库连接字符串 (MongoDB, PostgreSQL, MySQL, Redis) - 私钥 (RSA, EC, DSA, OpenSSH) - JWT Token - 赋值语句中的通用高熵密钥 ## ⚙️ 输入项 | 输入 | 必填 | 默认值 | 描述 | |---|:--:|---|---| | `api-key` | 否 | `''` | Precogs API 密钥。仅在 SAST 代码扫描时必填。 | | `severity-threshold` | 否 | `high` | 导致失败所需的最低严重性级别:`low`、`medium`、`high`、`critical` | | `scan-secrets` | 否 | `true` | 启用免费的密钥/PII 扫描 | | `scan-code` | 否 | `true` | 启用 AI 代码扫描(需要 `api-key`) | | `scan-dependencies` | 否 | `true` | 启用免费的依赖项 CVE 扫描(通过 OSV.dev) | | `fail-on-findings` | 否 | `true` | 如果发现结果达到严重性阈值,则使工作流失败 | | `sarif-output` | 否 | `''` | 用于写入 GitHub 代码扫描的 SARIF 文件的路径 | ## 📤 输出项 | 输出 | 描述 | |---|---| | `findings-count` | 发现结果总数 | | `critical-count` | 严重 级别的发现数量 | | `high-count` | 高危 级别的发现数量 | | `secrets-count` | 发现的密钥/PII 数量 | | `report-url` | app.precogs.ai 上的完整报告 URL | | `sarif-file` | 生成的 SARIF 文件路径 | ## 🔗 GitHub 代码扫描集成 上传 SARIF 输出,可直接在仓库的 **Security → Code Scanning** 标签页中查看发现的结果: ``` - uses: precogs-ai/precogs-action@v1 with: api-key: ${{ secrets.PRECOGS_API_KEY }} sarif-output: results.sarif - uses: github/codeql-action/upload-sarif@v3 if: always() with: sarif_file: results.sarif ``` ## 📊 工作流摘要 每次运行都会生成一个摘要,可在 **Actions → Run → Summary** 标签页中查看: | 🔴 严重 | 🟠 高危 | 🔑 密钥 | 总计 | |:--:|:--:|:--:|:--:| | 1 | 2 | 3 | 6 | ## 🛡️ 隐私与安全 - **免费版扫描完全在本地运行** — 您的代码绝不会离开 GitHub 运行器 - **专业版扫描** 通过 HTTPS 将文件内容发送到 Precogs API(传输过程中经过加密) - 除非您明确选择加入,否则扫描后不会存储任何数据 - 符合 SOC 2 标准 · [隐私政策](https://precogs.ai/privacy) ## 📝 许可证 MIT · [Precogs.ai](https://precogs.ai)
标签:AI安全工具, API密钥泄露, AWS密钥检测, CI/CD安全, CISA项目, DevSecOps, GitHub Actions, GitHub Token检测, GitHub代码扫描, Llama, OSV.dev, PII检测, SARIF集成, SAST, SQL注入检测, StruQ, XSS检测, 上游代理, 不安全加密检测, 人工智能安全, 代码安全扫描, 代码审计工具, 依赖项安全, 免费安全扫描, 合规性, 命令注入检测, 图数据库, 安全合规, 敏感数据泄露, 数据库URL泄露, 机密信息发现, 盲注攻击, 私有密钥检测, 网络代理, 自动化安全审计, 自动笔记, 自定义脚本, 跨站脚本攻击, 路径遍历检测, 静态应用安全测试