「我刪除了 Linux」,Linus 利用 GitHub 漏洞釋出惡作劇 README

2022-01-27 15:00:06

1月 25日, Linus Torvalds 在 Linux 的 GitHub 倉庫中提交了一個,其備註名為《delete linux because it sucks》—— 我刪除了 Linux ,因為它就是個垃圾。

大家好,我是 linus torvalds,紅極一時的 linux 的作者。你可以檢視 repo 的 url 和檔案頂部的名字,它們可以證明是我本人在提交。

我刪除了 linux,因為我討厭它,我認為它很爛。你應該去用這個很棒的作業系統,它叫做 windows xp ,我剛剛發現它真的很棒。

為什麼說這是一場惡作劇呢?因為 Linux 的原始碼並沒有被刪除,而且有細心的網友發現:該 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 :

如果是正常的提交,URL 應該帶有 commit 字眼,比如:

除了 URL 不對外,該 README 檔案也未出現在提交記錄中:

由此可見,Linus 只是開了個玩笑,並非真的刪庫跑路。

對此漏洞感興趣的可以去看看 Hacker News 的原帖,這個虛假提交漏洞結合 GitHub 另一個「,能創造出以假亂真的釣魚頁面。

比如  這個倉庫,看起來似乎 Linus 本人蔘與了這個倉庫的建設:

然而這只是通過替換電子郵件地址漏洞,把 slimsag 換成了 torvalds 而已。

 

左邊是通過漏洞替換郵件地址的 torvalds ,右邊是正常的,仔細觀察對比可以發現,障眼法換出來的 torvalds 是不顯示活動記錄的。

這些 GitHub 漏洞都是 2020 年公開的,然而漏洞作者稱「GitHub 完全不把這些問題當作漏洞」,不知道 GitHub 是無法處理,或是認為沒必要處理,反正直到現在它們仍能被利用。

展開閱讀全文