GitHub操作更新:帮助维护者打击坏演员

2021-04-23 07:02:04

GitHub操作是一个功能强大的灵活的CI / CD服务,使开发人员能够自动执行其所有软件工作流程。开发人员用GitHub操作建立了惊人的事情,CI / CD服务大大加快了开发人员的生产力。与此同时,随着GitHub操作的发展,我们不幸的是也看到了各种各样的坏行动者滥用行动,影响服务性能,并导致拒绝服务来开源项目。

该平台的可信度至关重要,我们的团队致力于开发人员的生产力,并采取行动执行我们的方式。行动的加密并不是新的,从一开始就一直在争夺虐待者。然而,随着硬币价格上涨,滥用者的数量升级了。我们花了数千小时的滥用,并实施了几十个不同的缓解来检测和防止它。确保行动仍然是开发人员自动化的可信选择,CI / CD需求是我们团队的首要任务,我们将继续将保障措施放置到位以领先于恶劣的演员。

我们想花点时间讨论最新的有针对性的虐待攻击之一,这些攻击影响了很多维护者在GitHub上,并解释了我们正在做的事情。

最近的加密货币价格上涨推动了CI提供商的有针对性滥用的大幅增加。在Github,我们已经看到了各种被剥削的矢量。其中之一是从错误的演员使用的叉子的拉出请求在上游存储库上运行挖掘代码。这显然对存储库业主产生了负面影响,其合法拉动请求和帐户可能会因此活动而被阻止。

为防止这一点,我们正在为如何在行动中从公共叉子处理Pult请求的情况来提供两项更改以帮助维护人员。

首先,我们正在更新我们如何评估对行动的声誉。具体而言,如果我们确定要滥用的操作或违反我们的术语,我们的实施将在托管Fork的帐户中指示,而不是与上游存储库关联的帐户。目标是防止维护人员因这些糟糕的演员而被标记并阻止。

其次,从首次贡献者的拉拔请求将需要手动批准存储库协作者,并在任何操作流程运行之前使用写入访问。当首次贡献者打开拉拉请求时,他们会看到维护者必须在运行之前批准其操作工作流的消息。

当维护者视图查看拉请求时,它们会在合并框中看到一个按钮,要求它们“批准并运行”工作流程。

一旦带有Write Access的合作者审查了更改,他们就可以批准仅为当前提交运行的工作流程。如果将拉请求更新为新提交,则需要进行新的批准。

根据与多个维护者的对话,我们认为这一步骤是手动批准和现有自动化工作流程之间的良好平衡。这将是默认设置,截至目前,无法选择退出行为,但我们确实有计划实现一些额外的设置来提供更多的灵活性。但是,我们希望听到您的想法,我们鼓励受到这种变化影响的维护者,以向我们提供反馈。

我们很高兴看到GitHub行动的增长及其继续通过开源项目和企业。为我们的社区提供强大和安全的平台,必须保持客户的信任,我们正在努力降低滥用社区的影响。其中部分包括为您提供这样的工具和功能来保护自己。