ludo-technologies/codescan

GitHub: ludo-technologies/codescan

一个开源的 GitHub 仓库安全扫描平台,整合 SAST、密钥检测与依赖漏洞扫描,生成可分享的字母评级报告。

Stars: 1 | Forks: 0

# [codescan.dev](https://codescan.dev) ### 扫描任何 GitHub 仓库的安全问题。 危险代码、暴露的密钥、过时的包 —— 生成一个可分享的评级。 [![在 codescan.dev 扫描仓库](https://img.shields.io/badge/Scan_a_repo-codescan.dev-2563EB?style=for-the-badge&logo=github)](https://codescan.dev) [示例报告](https://codescan.dev/examples) · [评估方法](https://codescan.dev/methodology)
## 演示 [https://github.com/user-attachments/assets/db41df8e-881e-4303-9634-d3aba7c853e1](https://github.com/user-attachments/assets/206d84be-585a-4f5c-966f-e4a70ef8664f) ▶ **前往 [codescan.dev](https://codescan.dev) 亲自体验** —— 粘贴任何公开仓库的 URL,无需注册。 ## 检测内容 | 类别 | 描述 | 技术支持 | |---|---|---| | **静态分析 (SAST)** | 查找可能导致安全漏洞的模式,包括不安全的输入处理和其他常见错误 | [Semgrep](https://semgrep.dev/) | | **敏感信息检测** | 检查是否意外提交了 API 密钥、token、私钥或凭据 | [Gitleaks](https://gitleaks.io/) | | **依赖漏洞** | 查找具有已知安全问题的包,以便您优先更新存在风险的包 | [Trivy](https://trivy.dev/) | ## 工作原理 1. **粘贴 GitHub URL** —— 将任何公开仓库的 URL 输入到扫描框中,或者使用 GitHub 登录以扫描您的私有仓库。 2. **运行检测** —— codescan.dev 会查找危险代码、暴露的密钥以及需要更新的包。 3. **查看报告卡** —— 查看字母评级、严重程度明细,以及每个检测结果的文件、行号和规则详情,您可以将其分享。 无需安装。无需 GitHub App。公开仓库无需注册。 ## 在您的 README 中添加徽章 展示您最新的安全评级。扫描您的仓库,然后在报告卡上点击 **Copy README Badge** —— 或者使用: ``` [![codescan security grade](https://codescan.dev/badge/OWNER/REPO)](https://codescan.dev) ``` 该徽章会反映最近一次公开扫描的结果,并在您重新扫描时自动刷新。尚未扫描的仓库将显示一个中性徽章,而不是失效的图片。 ## 适用人群 - **维护者** —— 在发布版本或接受大型 pull request 之前,获取一个快速的安全基线。 - **评估依赖的开发者** —— 在采用第三方仓库之前,检查其是否存在暴露的凭据和有风险的包。 - **工程团队** —— 在 PR 或审计的同时分享字母评级报告卡,而不是粘贴原始的工具输出。 ## 常见问题
codescan.dev 是免费的吗?
是的。公开仓库扫描是免费的,且无需注册。使用 GitHub 登录以扫描私有仓库 —— 同样免费。
我可以扫描哪些仓库?
任何公开的 GitHub 仓库 —— 只需将仓库 URL(https://github.com/owner/name)粘贴到扫描框中即可。使用 GitHub 登录可扫描您有权访问的私有仓库。
字母评级意味着什么?
该评级总结了发现的问题数量及其严重程度,以便您一目了然地比较各个仓库。
你们会存储我的代码吗?
不会。codescan.dev 会克隆仓库以运行扫描程序,并且仅持久化渲染报告卡所需的最终检测结果。
## 自行运行 大多数人不需要这样做 —— 直接使用 **[codescan.dev](https://codescan.dev)** 上的托管版本即可(免费,公开仓库无需注册)。但 codescan 是完全开源的 —— 包括 Web 前端和运行 Semgrep、Gitleaks 和 Trivy 的扫描引擎 —— 因此您可以使用 Docker 自行运行整个技术栈: ``` git clone https://github.com/ludo-technologies/codescan.git cd codescan BACKEND_API_KEY=dev-secret docker compose up --build ``` 然后打开 并扫描任何公开仓库。设置 `GITHUB_PUBLIC_TOKEN` 可将 GitHub 的 API 速率限制从 60次/小时 提升至 5000次/小时。 ## 构建方式 | 组件 | 路径 | 技术栈 | |---|---|---| | **Web 前端** | 仓库根目录 | Next.js (App Router),部署于 Vercel | | **扫描引擎** | [`engine/`](engine) | Go 模块 —— 编排 Semgrep/Gitleaks/Trivy,对结果进行评分,并暴露 `/api/scan` API | 该引擎是一个可导入的 Go 模块(`github.com/ludo-technologies/codescan/engine`):您可以通过 `engine/cmd/server` 独立运行它,或者通过调用 `engine.New(...)` 并将其挂载到 [chi](https://github.com/go-chi/chi) 路由器上,将其嵌入到您自己的服务中。 ## 贡献 有关开发设置和指南,请参阅 [CONTRIBUTING.md](CONTRIBUTING.md)。 ## 许可证 [MIT](LICENSE)
标签:LLM应用, SAST, 代码安全, 依赖安全审查, 日志审计, 漏洞枚举, 盲注攻击, 自动化攻击, 请求拦截, 静态代码扫描