可以说是最大的一次代源码泄漏事件
泄漏的源代码被托管在了Gitlab
上,gitlab
是全球第二大开源代码托管平台
。用户可以在上面建立私有仓库。
Gitlab让开发团队对他们的代码仓库拥有更多的控制,相比较 GitHub , 它有不少特色:
- 允许免费设置仓库权限;
- 允许用户选择分享一个 project 的部分代码;
- 允许用户设置 project 的获取权限,进一步提升安全性;
- 可以设置获取到团队整体的改进进度;
- 通过 innersourcing 让不在权限范围内的人访问不到该资源;
由于基础架构配置不正确,来自各个活动领域(技术,金融,零售,食品,电子商务,制造业)的数十家公司的公开资料库的源代码可公开获得。
泄漏代码的公共存储库中包括微软
,Adobe,联想,AMD,高通,摩托罗拉,海思(由华为拥有),联发科技,GE家电,任天堂,Roblox,迪士尼,江森自控等知名公司;而且这个清单还在增长。
可以从Twitter上的Bank Security的用户称源代码来自超过50多个公司,并且在一个公共仓库被发布。一些情况下还存在硬编码的凭证(用于创建后门的方式)。
硬编码
是将数据直接嵌入到程序
或其他可执行对象
的源代码中的软件开发实践,与从外部获取数据或在运行时生成数据不同。
硬编码数据通常只能通过编辑源代码
和重新编译可执行文件
来修改,尽管可以使用调试器或十六进制编辑器在内存或磁盘上进行更改。
普通编码比硬编码要复杂
一些,对以后的考虑要周到一些。普通编码是一种设计,而硬编码不过是一种具体的实现。
漏洞是由开发人员和逆向工程师Tillie Kottmann
收集的,这些泄漏来自各种来源,也来自他们自己对配置错误的devops工具
的追捕,这些工具可以访问源代码。
据外媒报道,遭泄露的源码被发布在 GitLab 上一个公开存储库中,并被标记为 “exconfidential” (绝密),以及 “Confidential & Proprietary”(保密&专有)。
开发人员 Tillie Kottmann
提到,一些代码库中确实存在硬编码凭证,他在发布前已尽可能地将其删除,“以避免造成直接伤害或是助长更大的破坏”。
移除要求
Kottmann
还表示,他们遵守移除要求,并乐意提供可增强公司基础架构安全性的信息。储存库中不再存在戴姆勒公司(Daimler AG)在梅赛德斯-奔驰品牌背后的泄漏。另一个空文件夹的名称为Lenovo
。
但是,从收到的DMCA通知数量(估计最多7份)以及法律或其他代表的直接联系来看,许多公司可能不知道泄漏。
一些注意到其代码公开的企业不会费心将其删除。至少在一个实例中,一家公司的几名开发人员只是想知道Kottmann是如何获得代码的,并没有要求拆下来,而是希望“很有趣”。
使用错误的 Devops 工具暴露了代码
Kottmann 称,他们试图在发布硬编码凭证之前从公司的源代码中删除这些硬编码凭证,这些凭证通常用于创建后门程序,以免发生更加强大的安全漏洞。
开发人员告诉我们,有更多公司使用错误的devops工具配置
了暴露源代码的公司。此外,他们正在探索运行SonarQube的服务器,SonarQube是一个开源平台,用于自动代码审核和静态分析,以发现错误和安全漏洞。
Kottmann
相信,有成千上万的公司由于未能正确保护SonarQube
安装而暴露了专有代码。
参考文章:https://www.bleepingcomputer.com/news/security/source-code-from-dozens-of-companies-leaked-online/?