三大Git托管平台联合发布用户遭勒索报告,皆为凭证遭窃所致

在五月初的时候,发生数个来自GitHub、GitLab及Bitbucket的Git程序代码托管平台的用户,遭清空程序代码存储库并勒索的事件,现在这三个服务企业联合发布声明,提到所有平台都未遭到入侵,用户是因为无意间泄漏凭证才导致被勒索,因此他们也在这个声明说明了用户管理帐户的最佳安全实践。

GitHub、GitLab及Bitbucke已经通知并帮助受影响的用户恢复其程序代码存储库,而且为了Git社群的生态系统安全,也共同合作调查事件的原委。他们收到用户的回应后便立即展开调查,发现所有受到勒索的用户帐号,都是遭使用合法凭证包括密码、应用程序密码、API密钥以及个人访问令牌(Token)进行访问,黑客在取得凭证后,接着疑似采取自动化的方法,用极快的速度执行Git命令访问这些帐户,并以赎金支付信息覆盖原本存储库的内容,最后删除远程提交的历史纪录。

这些Git服务供应商立即暂停了这些用户活动,撤销或重置凭证,以防止进一步恶意行为发生。在调查的过程中,他们发现有一个第三方凭证转储托管服务供应商,泄露了三分之一受影响的帐户凭证。另外的敏感数据凭证泄漏,则是因为在公开的网页服务器或是存储库暴露了.git/config所致,声明提到,这并不是新出现的问题,用户不应该在公共存储库或网页服务器上,公开凭证与包含令牌的.git/config文件。

声明中建议用户激活多因素验证以保护帐户,并且为每一个服务都设置强健且唯一的密码,避免当第三方泄漏敏感数据的时候,用户的其他服务也受到影响,声明中也提到,在组织许可的情况下,用户应该使用密码管理工具。

另外,声明也警告个人访问令牌有其风险,由于通过Git或是API使用个人访问令牌会绕过多因素验证程序,且依照令牌权限设置不同,可能具有读取和写入的存储库的能力,应该要被当作密码管理,否则使用上可能存在安全性风险。而且当用户在Clone URL中输入令牌,则Git会以明文的方式将令牌写到.git/config文件中,因此当.git/config公开就可能会被恶意使用。声明也提醒用户,在使用API​​时,应切记将令牌作为环境变量方式,而不是写死到程序代码里。