
包括 JIT 和 Orca Security 在内的软件公司联盟推出了 Opengrep,这是 Semgrep 开源软件的一个分叉(fork),以响应 OSS 版本中所提供的规则的许可证的变更。
Semgrep CE(前身为 Semgrep OSS)本身是于 2019 年从 Facebook 所编写的一个早期项目中分叉出来的。它是一个静态应用程序安全测试(SAST) 工具,用于分析源代码或编译后的代码,以发现安全漏洞,其 GitHub 存储库上有超过 11000 颗星。
新的 Opengrep 分叉背后的主要动机是修改了通过 semgrep/semgrep-rules 存储库提交给 Semgrep CE 的规则的许可证。该许可证现在禁止将提交给该项目的规则用于其他商业产品,除非有 Semgrep 明确授权。

该分叉项目的既定目标是保持项目引擎和规则的开放透明,采用开放的基于绩效的贡献系统,并恢复对现在仅限于 Semgrep 付费版本的功能的访问,Reddit 用户“confusedcrib”和“darrenpmeyer”的社区评论表明,指纹和元变量等功能已从 OSS 版本转移到了付费版本中。
Opengrep 宣言指出了 Semgrep 的许可证变更与近期其他许可证变更之间的相似之处。宣言解释了社区如何通过分叉项目来做出回应,并解释说:“当 Elasticsearch 改变其许可策略,停止推出新的 Elasticsearchs 和 Kibana 开源版本时,AWS 加紧推出了 OpenSearch。当 Hashicorp 停止 Terraform 开源时,社区与 Opentofu 走到了一起”。
Semgrep 的创始人兼首席运营官 Luke O’Malley 对这一批评做出了回应,他澄清道,Semgrep OSS 本身仍然是开源的,依然采用 LGPL 2.1 许可证,对规则库许可证的更改是为了应对一些公司重新分发规则库,这违反了现有的许可证。O’Malley 进一步解释说,出于自身目的使用 Semgrep OSS 的最终用户和公司不太可能受到新许可证的影响。
简而言之:如果你在使用 Semgrep 时没有将其打包和转售,你应该不会受到我们最近更改的影响。——Luke O’Malley
Mark Curphey 在 crashoverride.com 上发表的 一篇博客文章 对该分叉提出了批评。Curphey 为 Semgrep 进行了辩护,认为该分叉是不合理的,代表了那些历史上没有为该项目做出贡献的公司的机会主义行为。
[…] 该联盟是由多家企业或银行组成的组织,他们是为了共同的目标而联合起来的。这似乎是正确的,但我不认为其共同的目标是为了社区的利益或利他主义的开源价值。
他对 Semgrep 执行“开源 rug-pull”的说法提出了异议,并支持 Semgrep 的开放核心商业模式,在这种模式下,核心扫描仪是免费的,而附加功能是收费的。其他评论者同样持怀疑态度;Gullible-Chemist1794 在 Reddit 上写道:“我认为这个计划不会成功,因为所有支持 opengrep 的公司都是彼此的竞争对手,而且其中大多数是风险投资公司,迟早会出现利益冲突”。
Josh Grossman 在 BlueSky 上写道,他希望两大阵营能够合作:“就我个人而言,我真的希望 Opengrep 和 Semgrep 能够在多个供应商的大力支持下,合作开发一个由社区维护的引擎,同时也尊重 Semgrep 的商业权利”。
Opengrep 宣言最后详细介绍了用户能从中得到什么,承诺提供一个功能更强大的扫描引擎,不会将功能隐藏在登录之后,并与开放标准 JSON 和 SARIF 输出完全向后兼容。针对可能存在的批评,即由软件供应商组成的联盟来管理该项目,他们还做出了长期保证,即未来的改进不会被锁定在任何一家供应商身上。
Opengrep 的开放路线图会议定于 2025 年 2 月 27 日举行,更多信息请访问 opengrep.dev。
作者介绍
Matt Saunders 是 Adaptavist 的首席技术官的 DevOps 负责人。协助团队使用 DevOps、平台工程和云原生工具和技术,快速高效地交付可靠、高质量的软件,同时尽量减少压力。他曾与复杂的企业、小型初创企业、中小企业以及介于两者之间的所有企业合作过。还联合组织了伦敦 DevOps 聚会小组,该小组拥有 10000 多名成员,每月举办一次非常受欢迎的行业活动。
原文链接:
评论