“如果你提供免费的计算资源,就要做好会被攻击和滥用的觉悟。挖矿有利可图的情况下这是不可避免的。”
这是社交媒体上的一个言论,谈论的是前不久,黑客白嫖 GitHub 服务器进行挖矿的事件。早在去年 11 月,就有媒体曝出此类事件,可惜到今天似乎仍然未被禁止。
利用 GitHub Actions 加密挖矿,一次可运行上百矿机
去年 11 月,荷兰安全工程师贾斯汀·珀多克(Justin Perdok)在一通电话中告诉媒体,至少有一个黑客正在针对可能启用 GitHub Actions 的 GitHub 存储库。攻击的过程很简单,只需提交 Pull Request(PR),即使项目管理者没有批准,恶意挖矿代码依然能够执行。原理也很简单,利用 GitHub Action 的自动执行工作流功能,轻松将挖矿程序运行在 GitHub 的服务器上。
Github 大家都非常熟悉,是一家使用 Git 进行软件开发和版本控制的互联网托管提供商,于 2018 年被微软收购,目前该平台上的开发者数量已近 9000 万。Github Actions 是微软此前推出的 CI/CD 解决方案,主要可以帮助开发者和企业实现软件工作流程的自动化任务。该服务亦可有限的进行免费使用,这导致有非法矿工和黑客盯上微软试图利用微软提供的基础架构进行挖矿操作。
这实际还可能牵涉 Github Acitons 存在的某处缺陷,即提交含有恶意代码的合并请求无需原始作者同意即可合并。分析显示目前至少 95 个存储库遭到非法矿工和黑客的威胁,这些存储库被合并恶意代码利用 Github 服务器挖矿。
目前尚不得知黑客挖的是哪种币,但从其使用的挖矿软件 SRBMiner 来看,有可能是以太坊等适用显卡挖矿的 PoW 加密货币。据报道,黑客只要攻击一次就可以运行 100 多台矿机,这给 GitHub 的服务器带来了巨大的压力。
似乎“无解”,但蕴藏安全隐患
据报道,受害的不止 GitHub,还有 Docker Hub、Travis CI 以及 Circle CI 等提供类似服务的持续集成平台。
正如我们开头所说,“如果你提供免费的计算资源,就要做好会被攻击和滥用的觉悟。”GitHub 显然已经有了这个觉悟,这也并非黑客首次利用 GitHub 提供的免费服务发起进攻,但对于“被白嫖”,GitHub 似乎仍未找到一种很好的解决方案(微信搜索公众号 逆锋起笔,关注后回复 编程资源,领取各种经典学习资料。)。
在近日的一封电子邮件中,GitHub 表示,他们 "意识到这种活动,并正在积极调查",但他们去年对法国工程师也是这么说的。然而,现在的解决方案似乎知识在和攻击者玩猫捉老鼠的游戏,因为一旦旧账户被检测到并暂停,攻击者就会注册新账户。
目前,这次攻击似乎没有以任何方式破坏用户的项目,似乎只是专注于滥用 GitHub 基础设施。对普通用户来说,似乎并没有太大的安全问题,但 GitHub Action 被曝出的漏洞似乎不止这一个。据悉还有方法能使黑客读写开发者的仓库,甚至可以读取加密的机密文件。