Linus:“我删除了 Linux,因为它就是个垃圾!”

2024-05-15 11:32
文章标签 linux 删除 垃圾 linus

本文主要是介绍Linus:“我删除了 Linux,因为它就是个垃圾!”,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这是「进击的Coder」的第 597 篇分享

作者:罗奇奇

来源:OSC开源社区(ID:oschina2013)

阅读本文大概需要 4 分钟。

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

786837fc88c0442e90c365bac2c5ab46.png

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

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

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

5d2e1c01c63489b099ce8aeb46e2f6d2.png

这个链接指向 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 :

6ab165615cbee99b434082a230234cb0.png

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

1994040892b3077cf4fda9b848c55f15.png

1e06008d703410e800faee71580a6dae.png

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

64deb40d16660c50f2cbb4fdac966bf3.png

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

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

比如

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

3f2f2854c0f55f82ee4268a295372ec3.png

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

b66bef9589c9ce4cdce1c3c580846396.png

ddb8f4b0b3051b2ef8056ee98b043d40.png

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

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

f6b2deea37b0d2fee9859fe9aaf19378.png

End

崔庆才的新书《Python3网络爬虫开发实战(第二版)》已经正式上市了!书中详细介绍了零基础用 Python 开发爬虫的各方面知识,同时相比第一版新增了 JavaScript 逆向、Android 逆向、异步爬虫、深度学习、Kubernetes 相关内容,‍同时本书已经获得 Python 之父 Guido 的推荐,目前本书正在七折促销中!

内容介绍:《Python3网络爬虫开发实战(第二版)》内容介绍

db961bf2aa211167cd443ff87db2f260.png

扫码购买

3eabf97ea78715e321595aafe2a1a7d2.png

dcb82d8e896d094f3a9362eb959d1e02.png

点个在看你最好看

outside_default.png

这篇关于Linus:“我删除了 Linux,因为它就是个垃圾!”的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/991713

相关文章

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

Linux如何查看文件权限的命令

《Linux如何查看文件权限的命令》Linux中使用ls-R命令递归查看指定目录及子目录下所有文件和文件夹的权限信息,以列表形式展示权限位、所有者、组等详细内容... 目录linux China编程查看文件权限命令输出结果示例这里是查看tomcat文件夹总结Linux 查看文件权限命令ls -l 文件或文件夹

idea的终端(Terminal)cmd的命令换成linux的命令详解

《idea的终端(Terminal)cmd的命令换成linux的命令详解》本文介绍IDEA配置Git的步骤:安装Git、修改终端设置并重启IDEA,强调顺序,作为个人经验分享,希望提供参考并支持脚本之... 目录一编程、设置前二、前置条件三、android设置四、设置后总结一、php设置前二、前置条件

Linux系统中查询JDK安装目录的几种常用方法

《Linux系统中查询JDK安装目录的几种常用方法》:本文主要介绍Linux系统中查询JDK安装目录的几种常用方法,方法分别是通过update-alternatives、Java命令、环境变量及目... 目录方法 1:通过update-alternatives查询(推荐)方法 2:检查所有已安装的 JDK方

Linux系统之lvcreate命令使用解读

《Linux系统之lvcreate命令使用解读》lvcreate是LVM中创建逻辑卷的核心命令,支持线性、条带化、RAID、镜像、快照、瘦池和缓存池等多种类型,实现灵活存储资源管理,需注意空间分配、R... 目录lvcreate命令详解一、命令概述二、语法格式三、核心功能四、选项详解五、使用示例1. 创建逻

Linux下在线安装启动VNC教程

《Linux下在线安装启动VNC教程》本文指导在CentOS7上在线安装VNC,包含安装、配置密码、启动/停止、清理重启步骤及注意事项,强调需安装VNC桌面以避免黑屏,并解决端口冲突和目录权限问题... 目录描述安装VNC安装 VNC 桌面可能遇到的问题总结描js述linux中的VNC就类似于Window

linux下shell脚本启动jar包实现过程

《linux下shell脚本启动jar包实现过程》确保APP_NAME和LOG_FILE位于目录内,首次启动前需手动创建log文件夹,否则报错,此为个人经验,供参考,欢迎支持脚本之家... 目录linux下shell脚本启动jar包样例1样例2总结linux下shell脚本启动jar包样例1#!/bin

Linux之platform平台设备驱动详解

《Linux之platform平台设备驱动详解》Linux设备驱动模型中,Platform总线作为虚拟总线统一管理无物理总线依赖的嵌入式设备,通过platform_driver和platform_de... 目录platform驱动注册platform设备注册设备树Platform驱动和设备的关系总结在 l

linux批量替换文件内容的实现方式

《linux批量替换文件内容的实现方式》本文总结了Linux中批量替换文件内容的几种方法,包括使用sed替换文件夹内所有文件、单个文件内容及逐行字符串,强调使用反引号和绝对路径,并分享个人经验供参考... 目录一、linux批量替换文件内容 二、替换文件内所有匹配的字符串 三、替换每一行中全部str1为st

MySQL逻辑删除与唯一索引冲突解决方案

《MySQL逻辑删除与唯一索引冲突解决方案》本文探讨MySQL逻辑删除与唯一索引冲突问题,提出四种解决方案:复合索引+时间戳、修改唯一字段、历史表、业务层校验,推荐方案1和方案3,适用于不同场景,感兴... 目录问题背景问题复现解决方案解决方案1.复合唯一索引 + 时间戳删除字段解决方案2:删除后修改唯一字