刚才把一个 GitHub 仓库安全扫描器 开源了,发到 V2EX 想听听大家的真实意见。
在线体验: https://topflow.dev/builder?template=github-security-scanner
先说清楚一件事: 👉 现在这个只是 demo,用来验证思路和架构,并不是一个“已经做完的漏洞扫描器产品”。
之前做过 CISO ,这个 demo 目前主要做两件事:
现在这个 demo 能做什么(比较基础):
在线体验: https://topflow.dev/builder?template=github-security-scanner
源码: github.com/csupenn/topflow
技术栈(给关心实现的同学):
一些当前已经落地的安全设计点:
如果继续沿着 scanner 这个方向往下走,核心思路不是把一个扫描器做大,而是:
TopFlow 变成一个让用户“自己搭安全工具”的平台
也可以理解成: build your own Snyk(用可视化 + 可组合的方式)
大概是这样一个路径:
TopFlow 的定位:
从这个角度讲,TopFlow GitHub Security Scanner 只是一个示例模板 / Template。
如果往“全部真实数据 + 可复用”方向推进,后面的路线大概会是:
1:NPM 漏洞扫描 Node
npm audit --json2:多语言 Scanner Nodes
pip-auditcargo auditgovulncheck3:升级 GitHub Scanner Workflow
现在 demo 里,其实还是偏“单体 workflow”的:
GitHub Scanner Workflow
├─ Prompt
├─ GitHub API
├─ JS 逻辑
├─ Score 计算
└─ Report
问题很明显:
理想的设计应该是:
Security Node Library
├─ NPM Vulnerability Scanner
├─ Python Vulnerability Scanner
├─ License Checker
├─ Secret Scanner
├─ SBOM Generator
├─ Score Calculator
└─ Notification Nodes
然后由用户自己组合,比如:
GitHub Scanner / OSS Scanner:
Start → Detect Language → NPM Scanner → Score → End
用户自己做个 Pre-Commit Workflow:
Start → NPM Scanner → 过滤高危 → Slack 通知 → End
也想借这个帖子,真诚地请教大家:
这个方向有没有明显“想当然”的地方?
从工程 / 使用角度看,有没有一看就不想用的点?
拿扫描器为例,如果是你,会更想要:
如果你觉得这个项目哪怕有一点点参考价值, 也欢迎顺手给 GitHub repo 点个 Star, 对个人开源项目真的很有帮助 🙏
GitHub: github.com/csupenn/topflow
感谢!
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.