GitHub 源代码疑遭泄漏

article/2025/8/23 17:16:44

 聚焦源代码安全,网罗国内外最新资讯!

编译:奇安信代码卫士团队

TypeScript的开发者Resynth 发布题为《GitHub 源代码泄漏》的文章指出,GitHub.com 的所有源代码被公开。

(泄漏者在 Readme 中指出,文档包括日常开发等内容如数据库迁移和测试。历史文档中包括 dotcom 开发人员和代码如何组织运转如开始、进程和理念以及技术栈。https://web.archive.org/web/20201104050026if_/https://github.com/github/dmca/tree/565ece486c7c1652754d7b6d2b5ed9cb4097f9d5)

GitHub 源代码疑遭泄漏

如下是博客全文:

在一个向 GitHub 官方 DMCA 仓库提交的可疑 commit 中,一名身份不明的人员利用 GitHub 应用程序中的一个 bug 假冒GitHub CEO Nat Friedman的身份,上传了机密的源代码。

长久以来,GitHub 一直因为未公开源代码而饱受诟病。GitHub 托管着数百万个开源项目,批评人士认为从某种程度来看 GitHub 是虚伪的。

然而,这次事件引发人们对 GitHub 源代码安全的关注,以及如果 GitHub 真的公开源代码,那么它是否会因此而受损。有人认为这将损害 GitHub 的整体安全性,这种说法可能是正确的。一般而言,闭源应用程序执行的是“隐蔽式安全 (security by obscurity)”,即源代码是隐藏的,目的是降低安全风险。

自2018年收购 GitHub 后,微软一再强调其对开源的“爱”。我们可以从很多商业广告中不断听到这种言论,它的目的是让微软处于开源发展的最前沿。

但一些用户如 Drew DeVault 认为微软此举试图在审查开源。通过闭源应用程序以及 Git 的专有扩展,GitHub 被视作试图包含开源的平台。例如,GitHub 宕机两小时会导致数千个开源项目无法访问以及变得不稳定。

从很多方面来看,GitHub 堪称开源开发界的谷歌。

或许,GitHub 在12年之后终于向公众开放了源代码;而这可能也是我们所需要的。

CEO 澄清:GitHub 未被黑

GitHub 的 CEO Nat Friedman 在 Hacker News 上做出了回应,如下是全文:

GitHub 并未被黑。几个月前,我们不慎将未脱敏/混淆的 GitHub Enterprise Server 源代码发给了一些客户。它和 github.com 共享了代码。像其他人说的那样,GitHub 的很多部分是用 Ruby 编写的。

Git 使冒用未签名 commit 变得容易,因此我们建议大家签名 commit 并查找 GitHub 上是否有 “已验证“ 标签,确保一切按预期执行。

至于仓库假冒问题,敬请关注。目前我们正在致力于让大家查看孤儿文档 (orphaned commit) 时使它变得更显眼。

一言以蔽之:一切都很好,情况如常,云雀正准备起飞,蜗牛爬行于荆棘,世界正常运转。

GitHub & 开源 & 安全

这件事在社交平台上引发关注。

有人认为,光有绿色的“已验证”提示是不够的,需要为不具有 PGP 密钥的用户添加红色的“未验证”提示。或者在资料中添加一个勾选框如“特殊标记未签名 commit” 或者甚至是”我的账户与未签名 commit 无关“等。

有人表示,尽管做出了澄清,但由于 GitHub 是闭源的,因此这起事件仍然可定性为“泄漏“。既然源代码如此容易获取,GitHub 源代码为何不开源的问题?有人认为,源代码开源与其运行专有 SaaS 的商业模型不符。GitHub 是一家公司而不是社区项目,开源不会获得任何好处,因此不会这么做。开源会带来很多隐形成本,闭源并非魔鬼,而用户可以选择其它开源 git 托管平台。也有人反问,为什么所有一切都需要开源呢?如果开源可以带来附加值则选择开源。GitHub 不开源并非因为某些秘方使它的源代码具有特殊之处:Gitlab 复制了 GitHub 的多数功能,而很多其它开源托管平台也是如此。GitHub 的价值在于分享思想,而非代码层面的东西。

也有人猜测,GitHub 源代码泄漏事件和前不久发生的 youtube-dl 遭 GitHub 下架有关。Youtube-dl 是一款颇受欢迎的 Youtube 视频下载命令行工具,未下架之前在 GitHub 排名第六,获得的 Star 超过7万。该工具遭各大视频平台的强力抵制,GitHub 按照 DMCA (《数字千年版权法》)规定将其下降,但引发用户的强烈抵制。

你怎么看?

推荐阅读

一拖再拖忍无可忍,谷歌披露影响开发人员的 GitHub 高危0day漏洞

Repo Jacking:依赖关系仓库劫持漏洞,影响谷歌GitHub等7万多个开源项目的供应链

Kramdown 配置不当引发 GitHub Pages 多个 RCE,得 $2.5万($6.1万系列之二)

原文链接

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

https://news.ycombinator.com/item?id=24994746

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

题图:Pixabay License

本文由奇安信代码卫士编译,不代表奇安信观点。转载请注明“转自奇安信代码卫士 https://codesafe.qianxin.com”。

奇安信代码卫士 (codesafe)

国内首个专注于软件开发安全的

产品线。

    觉得不错,就点个 “在看” 吧~


http://chatgpt.dhexx.cn/article/uMqNUIjt.shtml

相关文章

2020 最好的Linux网络监控工具

前言 虽然这个清单包含开源的和闭源的产品,但它着重于介绍基于 Linux 的网络监控工具, 少数常用工具只能在 Windows,Pandora 或其他系统上运行,但是大多数网络监视工具都在Linux系统上运行,因为 Linux 通常是 IT 专家的…

网络地址转换(NAT)技术是否拖慢了互联网的发展?(2020 修订版)

2020 年修订版前言:看到有人还是对 IPv4 和 IPv6 的关系搞不清楚,好像只要有了 IPv6 就可以不要 IPv4 了,我只好把老文章祭出来了,当时也是我们接触 IPv6 的开始,两年下来,有些地方做了一些修订。 --- 正文…

Nat. Mach. Intell. | 人工智能的透明度和可重复性

今天给大家介绍多伦多大学的研究人员发表在nature machine intelligence上的一篇文章。文章指出McKinney等人利用AI在乳腺癌筛选上的工作,缺乏研究方法和代码实现的细节,阻碍了透明且可重复(transparent and reproducible)的AI研究…

网络安全学习中的工具

1> Nmap Nmap,也就是Network Mapper,最早是Linux下的网络扫描和嗅探工具包。 系统管理员可以利用nmap来探测工作环境中未经批准使用的服务器,但是黑客会利用nmap来搜集目标电脑的网络设定,从而计划攻击的方法。 其基本功能有三…

p2p网络测试工具_(官方更新)IPFS的网络层——libp2p在2020的发展

如果您在分散的点对点空间中执行任何操作,您可能听说过 libp2p - 用于对等应用程序的模块化网络堆栈。 libp2p 由许多模块化库组成,p2p 网络开发人员可以从中选择和重用所需的协议,同时便于应用程序之间的升级和互操作。这有助于 Web3 开发人…

NAT会话穿越应用程序(STUN)(RFC-5389)

RFC文档链接 摘要 NAT会话穿越应用程序 (STUN) 是一种协议,在处理网络地址转换(Network Address Translator, NAT)穿越时充当其他协议的工具。终端可以使用它来确定NAT分配给它的IP地址和端口。它还可以用来检查两端之间的连通性,并作为keep-alive协议…

教你用 CSS 实现超真实的 3D 相册,让你的照片立体感 UPUP

前言 现如今网页越来越趋近于动画,相信大家平时浏览网页或多或少都能看到一些动画效果,今天我们来做一个有意思的动画效果,通过 css3 实现 3d 效果的立方体相册,下面一起看看吧。 实现思路 首先我们要确定好 html 的结构以及要使…

HTML+CSS实现3D立体相册

程序员的浪漫&#xff0c;话不多说上代码。 HTML: <body><div id"cube"><!--外层盒子--><ul><li><img src"./imgs/1.jpg" ></li><li><img src"./imgs/2.jpg" ></li><li>&l…

该换壁纸啦,记录一个用CSS和HTML做的3D立体相册

这几天看东宫沉迷于陈星旭&#xff0c;李承鄞太绝了&#xff01;这不得把壁纸安排上&#xff1f;简单记录一下制作过程。 1、准备照片 需要1张大的背景图和6张3d相册用图存放在img文件夹中。 可以先使用PS、美图秀秀或者其他修图软件等将相册用图改成200px*200px。 注意文件…

抖音程序员HTML相册,快手抖音程序员表白女朋友3D立体相册源码html网页相册代码...

前几天分享了一套源码&#xff0c;今天又为大家带来一套类似的源码&#xff0c;希望大家喜欢! 快手抖音很火的程序员女朋友3D立体相册源码html网页相册代码&#xff0c;经测试在IE8浏览器下无法预览&#xff0c;建议使用支持HTML5与css3效果较好的360浏览器预览本源码。 代码如…

H5 3d立体相册 CSS3特性

CSS3 变形特性,立方相册,3d旋转 之前看见过3d效果的立体相册,挺羡慕的,现在自己也有机会实现属于自己的3d立体相册了~~~话不多说,开搞… 一, 准备材料 六张自己喜欢的图片,六个面,怎么简单方便怎么来,名字直接取123456,后缀.jpg,放到img文件夹下一张小图片,大点也不要紧,为了浏…

js制作3d立体旋转相册

使用js做一个3d立体旋转相册 可自由拖拽 源码如下 <!DOCTYPE html> <html> <head> <meta charset"utf-8"><title>1</title><style type"text/css">.main{perspective: 800px;}#mian img{width: 200px;height:…

3D立体动态相册(带背景音乐)HTML+CSS脚本

3D立体动态相册&#xff08;带背景音乐&#xff09;HTMLCSS脚本。程序员硬核送礼方式。。。 动画效果 截图效果&#xff1a; 照片准备&#xff1a; 命名为1、2、3、…… 音乐&#xff1a; 将文件依次放在各自文件夹中&#xff1a; CSS文本&#xff0c;命名&#xff1a;index.…

抖音3d相册html代码,抖音3D立体相册表白代码.doc

抖音3D立体相册表白浪漫代码 首先先建立html文件css-3d旋转 之后再新建一个CSS的文件夹 并在css文件夹中建立txt文件&#xff0c;并且把代码复制进去&#xff0c;修改后缀名为.css html{ background: #000; height: 100%; } /*最外层容器样式*/ .wrap{ position: relative; pos…

打造3D立体相册

项目目录结构&#xff1a; HTML代码&#xff1a; <!DOCTYPE html> <html><head><meta charset"utf-8" /><title></title><link type"text/css" rel"styleSheet" href"css/wrap.css" /><…

MATLAB竟也能制作3D相册?教你用MATLAB制作立体动态相册

效果 教程部分 1 图片导入与大小重设 需要有一个名为album的文件夹和当前m文件在同一文件夹&#xff0c;另外ablum文件夹内至少要有一张jpg格式图片 path.\album\;%文件夹名称 filesdir(fullfile(path,*.jpg)); picNumsize(files,1);%遍历路径下每一幅图像 for i1:picNumfi…

HTML 3d立体旋转相册

效果&#xff1a;&#xff08;实际是动态旋转&#xff09; 目录&#xff1a;&#xff08;根据自己需要替换图片就行了 大照片是400*400 小照片是100*100&#xff09; 提取码&#xff1a;1122 代码链接 index.html <!DOCTYPE html> <html lang"en"> <…

3D立体相册不过是冷锋蓝plus版 html+css

一.话不多&#xff0c;先看效果&#xff1a; 转念一想&#xff0c;好像很久很久没出css特效的文章了&#xff0c;特别是工作之后&#xff0c;更少了。偶然翻看电脑内存的时候&#xff0c;发现这个自己1年多以前写的特效&#xff0c;甚美&#xff0c;又勾起我一段尘封的回忆。。…

创意相册、3D立体相册

3D表白相册 精美的3D动态相册&#xff0c;快去做给她吧&#xff01; 点我下载 换的图片格式要一样&#xff0c;实在不一样就去代码里面改后缀名 https://download.csdn.net/download/weixin_43474701/60386577

3D立体相册,一个可旋转的立体相册

11359.gif 主要功能&#xff1a;立体球体展示 可自行添加本地照片 可旋转&#xff0c;照片可放大 商城下载&#xff1a; App Store github下载 用的代码是用的云标签的code&#xff0c;代码略有改动 主要代码调用 // 调用展示 self.sphereView [[YoungSphere alloc] initWithF…