WAVE SUMMIT 2021深度学习开发者峰会 点击报名 了解详情
写点什么

GitHub 源代码泄露,CEO 回应:这是个意外

2020 年 11 月 06 日

GitHub 源代码泄露,CEO 回应:这是个意外

今天, TypeScript 开发者 Resynth 发文称,代码托管服务 GitHub 的全部源代码被泄露。他表示,在向官方 GitHub DMCA 提交的可疑文件中,一个身份不明的人利用 GitHub 应用程序中的一个漏洞冒充 GitHub CEO Nat Friedman 上传了机密源代码。


疑似泄露代码地址:


https://web.archive.org/web/20201104050026if_/https://github.com/github/dmca/tree/565ece486c7c1652754d7b6d2b5ed9cb4097f9d5



随后,Nat Friedman 迅速在 Hackernews 的帖子上做了回复。他表示 GitHub 没有被黑客入侵,一切都很正常。所谓泄露的代码是几个月前他们意外地将 GitHub Enterprise Server 源代码未脱敏/混淆的 tarball 交付给了一些客户。



随意封禁,GitHub 被指没有开源精神


有开发者指出,此次泄露事件与 GitHub 上周下架youtube-dl和后续一系列动作有关,开发者用这种方式来进行抗争。


上周五,在应美国唱片业协会(RIAA)的要求下, GitHub 下架了平台上最受欢迎的项目之一: 下载器项目 YouTube-dl 。但 RIAA 的禁令起到了相反的效果,很多开发人员开始对此表示抗议,并发布了更多代码副本。事件发生以前,在 GitHub 上搜索 Youtube-dl 相关的项目只有 20 多个,而现在至少能搜出 4100 多个。


其实对于 GitHub 来说,封禁项目不是什么新鲜事。


去年 5 月,GitHub 更新了用户协议,表明 GitHub 的产品和服务适用于美国出口管制法律。当年 7 月起,GitHub 基于美国出口管理条例,开始对伊朗、叙利亚和克里米亚的私人 repo 和付费账户实施限制。


从克里米亚地区的俄罗斯籍开发者到全部伊朗境内开发者再到定居芬兰的伊朗籍开发者,统统遭遇了账号被封无法创建私有库、已经创建的私有库被关闭等问题。而这些开发者并未得到 GitHub 提前通知,没有任何缓冲备份的时间。


今年 3 月份,GitHub 封禁了一个属于微软的前端开源项目 Aurelia,理由是项目中有两名来自伊朗的外部贡献者。Aurelia 是微软开发的 JavaScript 框架,已开源了 5 年。


这再次引发了开发者们的质疑:GitHub 封禁项目是否太随意?这难道不是与开源精神背道而驰?


事件不断发酵,GitHub CEO 不得不对此事进行道歉:关闭此帐户显然是一个可怕的错误。我们正在调查具体过程,并更改规则以确保此类问题不会再次发生。当然这一声明并没有阻止封禁事件的再次发生。


此事也引发了后续的一个讨论:GitHub 上的技术是各国志愿者撰写并无偿分享,并非美国购买有著作权的所有物,美国无权拿不属于自己的东西制裁别人甚至“拿伊朗的技术制裁伊朗”。GitHub 最后在争议下觉得有所理亏而改变作法,被封禁的用户可以下载回自己的作品,但依然不能在社区里查看代码。


但无数开发者已经深刻的意识到,被微软收购后的 GitHub 说到底还是一家美国企业。开源虽然无国界,但 GitHub 却是有国界的。有趣的是,GitHub 今年初发布的《八度宇宙状态》报告显示,截止 2019 年,GitHub 上共有 4000 万名开发者,而 80%的代码贡献者来自美国以外的地区。


GitHub 为什么不开源自己的代码?


“GitHub 本身不是开源的,这使我永远不满意。”有开发者表示。


这次 GitHub 源代码疑似泄露事件,刺激了开发者对 GitHub 的讨论:既然源代码如此容易就可以获得,为什么 GitHub 不开源?


大家将 GitHub 不开源的原因归结到其本质上是一家商业公司。GitHub 的主要目标客户是企业,他们关心合法性。获取非法源代码很容易,他们的客户不会冒这个险。同时,如果 GitHub 只是转储了代码库但对错误报告响应很慢,那将很不利于他们的公关形象。开源不仅需要源代码,还需要更多。


被封禁账户的俄罗斯研发人员 Nikolay 表示:“GitHub 虽然是一个开源社区,但更是一个商业公司。对外形象和求稳才是他们真正在意的吧。只要有人施压,他们可以轻易处置任何人。”


也有支持者认为,GitHub 的价值在于分享思想,而不是任何明智的代码。一直以来,GitHub 都是托管开源项目的最佳选择,但自从被微软收购后,它一直无法摆脱商业公司的标签。


猎豹移动董事长兼 CEO 傅盛曾在一次演讲中说:你把一个 App 放在网络上,可以让几十亿人下载,让全世界的人知道你。时过境迁,谷歌、苹果、Facebook 这样超大平台的出现,使得事情又走向了另一个极端。当涉及到各种商业利益和社会因素的时候,它们同样可以在一天内让几十亿的用户完全接触不到你,让你建立的基业瞬间湮灭——这就是垄断平台的力量。


这句话放在 GitHub 身上,同样适用。


GitHub 不代表开源


从 2008 年正式上线至今,GitHub 已经成为全球最大的社交编程及代码托管网站,但最受欢迎并不代表全部。GitHub 自身也会面临很多外部问题。


2013 年 1 月,GitHub 突然疑似遭遇DDOS攻击,访问大幅放缓。经过网站管理员查询日志发现,是来自 12306 的抢票插件用户洪水般的访问导致 GitHub 出现问题。2019 年 5 月,《个人电脑杂志》网站报道,GitHub 遭到一名黑客入侵。据称,这名黑客先擦除代码资源库,然后作为恢复数据的交换向用户所要赎金。


最近,Github 被发现存在一个高危漏洞,基本上所有拥有复杂 Github Actions 的项目都容易被攻击。这让 Github 的安全性也遭到质疑。


GitHub 能够跟开源划等号吗?肯定不能。


延伸阅读:


https://resynth1943.net/articles/github-source-code-leak/

2020 年 11 月 06 日 07:002579

评论 1 条评论

发布
用户头像
从来就没有绝对的安全。
2020 年 11 月 16 日 11:01
回复
没有更多了
发现更多内容

一次系统调用时间过长追踪完整教程案例

AI乔治

Java Linux 架构

如何通过NGINX的log日志来分析网站的访问情况,试试这些命令

我爱娃哈哈😍

nginx Shell

架构师训练营W12作业

Geek_f06ede

2021 第七季 28天写作训练 测试

将军-技术演讲教练

甲方日常 82

句子

随笔杂谈

不愧是Alibaba技术官:程序员必会的架构知识清单,如何让你技术上的提升面试时的丰收

Java架构之路

Java 程序员 架构 面试 编程语言

CSS09 - 文本&背景属性

桃夭十一里

html/css

如何使用Eclipse内存分析工具定位内存泄露

Java老k

Java 内存泄露

甲方日常 81

句子

随笔杂谈

如何使用Eclipse内存分析工具定位内存泄露

AI乔治

Java eclipse 架构

还在手动写数据库文档吗?试试这个工具,划水干活儿两不误!

我爱娃哈哈😍

数据库 文档生成

浅析整洁架构之道(二) 初步了解The Clean Architecture

御剑

DDD 领域驱动 The Clean Architecture Robert C. Martin

AQS设计思想与重要字段详解

程序员小毕

Java 源码 jdk 并发编程 AQS

CSS07 - 伪类

桃夭十一里

html/css

在onelogin中使用OpenId Connect Implicit Flow

程序那些事

权限系统 程序那些事 openid 权限架构 onelogin

“千人斩”阿里面试官同事,被应聘者暴打一顿后!最终洗心革面总结出这份高薪“Java 面试秘籍”

Java成神之路

Java 程序员 架构 面试 编程语言

杜绝标题党,好的标题是成功的99%

xcbeyond

方法论 28天写作 写作技巧

深入理解Nginx的四级指针

赖猫

c++ nginx Linux Nginx源码

CSS06 - 标签的显示模式与转换

桃夭十一里

html/css

LeetCode题解:111. 二叉树的最小深度,BFS,JavaScript,详细注释

Lee Chen

算法 LeetCode 前端进阶训练营

【Mysql-InnoDB系列】InnoDB架构

程序员架构进阶

MySQL 架构 innodb 28天写作

CSS08 - CSS特性

桃夭十一里

html/css

俯瞰Dubbo全局,阅读源码前必须掌握这些!!

冰河

架构 分布式 微服务 dubbo 服务治理

【CSS】CSS对大小写敏感吗?

学习委员

28天写作

2020年无人场景市场趋势洞察

IoT云工坊

人工智能 物联网 智慧照明 节能管理 安防报警

CSS05 - 常用的高级选择器

桃夭十一里

html/css

天天CRUD,被领导怼,我是如何从小公司菜鸡到阿里P8架构师?,首次分享Java程序员黄金五年进阶心得

Java架构之路

Java 程序员 架构 面试 编程语言

数据库表数据量大读写缓慢如何优化(1)【冷热分离】

我爱娃哈哈😍

大数据 架构 海量数据库的设计与实践 优化 数据库优化

架构师训练营大作业(一)

我是谁

架构师训练营第 1 期

数据中心“容灾”和“备份”的区别

开始的开始-可能是最早提交的28天写作活动作品

石君

28天写作

GitHub 源代码泄露,CEO 回应:这是个意外-InfoQ