IT资讯 “我删除了 Linux”,Linus 利用 GitHub 漏洞发布恶作剧 README

stuart · 2022-01-27 14:00:09 · 热度: 55

1月 25日, Linus Torvalds 在 Linux 的 GitHub 仓库中提交了一个恶作剧 README 页面,其备注名为《delete linux because it sucks》—— 我删除了 Linux ,因为它就是个垃圾。

“我删除了 Linux”,Linus 利用 GitHub 漏洞发布恶作剧 README

大家好,我是 linus torvalds,红极一时的 linux 的作者。你可以查看 repo 的 url 和文件顶部的名字,它们可以证明是我本人在提交。

我删除了 linux,因为我讨厌它,我认为它很烂。你应该去用这个很棒的操作系统,它叫做 windows xp ,我刚刚发现它真的很棒。

为什么说这是一场恶作剧呢?因为 Linux 的源代码并没有被删除,而且有细心的网友发现:该 README 最底部还有一个链接:

“我删除了 Linux”,Linus 利用 GitHub 漏洞发布恶作剧 README

这个链接指向 Hacker News 黑客论坛的一个帖子,帖子详细介绍了 GitHub 现存的“虚假提交”漏洞:可以在 https://github.com/my/project 的 URL下发布任意提交。

比如用 https://github.com/my/project/blob/<faked_commit>/README.md 这种 URL ,就可以发布虚假的 README 页面,这种虚假提交不会出现在项目的提交记录里面,也不属于任何一个分支,只能通过访问特定的 URL 看到。而 Linus 这个恶作剧 README 文件正是利用了这个虚假提交漏洞,看一下这个 README 的 URL :

“我删除了 Linux”,Linus 利用 GitHub 漏洞发布恶作剧 README

如果是正常的提交,URL 应该带有 commit 字眼,比如:

“我删除了 Linux”,Linus 利用 GitHub 漏洞发布恶作剧 README

“我删除了 Linux”,Linus 利用 GitHub 漏洞发布恶作剧 README

除了 URL 不对外,该 README 文件也未出现在提交记录中:

“我删除了 Linux”,Linus 利用 GitHub 漏洞发布恶作剧 README

由此可见,Linus 只是开了个玩笑,并非真的删库跑路。

对此漏洞感兴趣的可以去看看 Hacker News 的原帖,这个虚假提交漏洞结合 GitHub 另一个“通过 git 电子邮件地址冒充用户”漏洞,能创造出以假乱真的钓鱼页面。

比如 https://github.com/slimsag/linux/tree/5895e21f3c744ed9829e3afe9691e3eb1b1932ae#linux-kernel 这个仓库,看起来似乎 Linus 本人参与了这个仓库的建设:

“我删除了 Linux”,Linus 利用 GitHub 漏洞发布恶作剧 README

然而这只是通过替换电子邮件地址漏洞,把 slimsag 换成了 torvalds 而已。

“我删除了 Linux”,Linus 利用 GitHub 漏洞发布恶作剧 README “我删除了 Linux”,Linus 利用 GitHub 漏洞发布恶作剧 README

左边是通过漏洞替换邮件地址的 torvalds ,右边是正常的,仔细观察对比可以发现,障眼法换出来的 torvalds 是不显示活动记录的。

这些 GitHub 漏洞都是 2020 年公开的,然而漏洞作者称“GitHub 完全不把这些问题当作漏洞”,不知道 GitHub 是无法处理,或是认为没必要处理,反正直到现在它们仍能被利用。

猜你喜欢:
暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册