网易首页 > 网易号 > 正文 申请入驻

Linux内核20MB脚本自举:Astrid用1条命令把操作系统

0
分享至

14.31MB的压缩包,解压后变成20MB的shell脚本,执行后直接把当前操作系统替换成另一个操作系统。这不是病毒演示,是开发者Astrid在GitHub上公开的技术实验。她给这条命令配了句轻描淡写的注释:"Reading the previous parts is not required"——确实不需要读前作,因为单这一行就足够让人愣住。

curl https://astrid.tech/rkx.gz | gunzip | sudo sh

管道符串联起下载、解压、执行三个动作,末尾的sudo把权限提升到root。任何稍有安全意识的人都会在这里踩刹车:管道里的代码还没看到,就已经准备执行了?Astrid的回应是直接公开源码——或者说,公开了这份"源码"的真面目。

20MB的shell脚本里塞了什么

文件头尾倒是正常的shell语法:检查root权限、检查kexec-tools等依赖、用here-document把一大段base64解码成临时文件。但中间那部分被折叠成"..."的内容,展开后是重复的字符串块——Hr7vfOuMr610ygifa2yphI4pZCRAPHzf+dYZX1vplBE+19hSCR1TyECAePi+860zvrbSKSN8rrGl——典型的base64编码特征。

解码后的内容是个cpio归档(ASCII cpio archive, SVR4 with no CRC),里面包含一个内核文件"k"和一个内存盘"r"。脚本最后两行调用kexec:先把新内核加载进内存,再直接跳过去执行,完全绕过正常关机流程。

kexec这个机制原本是给服务器热补丁用的。Linux内核 crash 了?用kexec启动个新内核收集dump,不用重启硬件。Astrid把它反过来用:不是抢救崩溃的系统,而是主动用20MB脚本"劫持"当前系统——就像用解释器现场编译出一份新固件,然后热插拔到CPU上。

为什么Linux能这么玩

Unix设计哲学里有一条"一切皆文件",Linux走得更远:一切皆字节流。/proc、/sys、设备节点、甚至内核本身,都可以被抽象成可读写的字节序列。Astrid的脚本本质上是在利用这个特性做"自指"——用用户空间的shell脚本,生成并加载一个新的内核空间。

这里有个微妙的层级跳跃。通常我们认为操作系统是"底层",应用程序跑在它上面。但kexec打破了这层边界:当前内核可以主动让出控制权,把硬件交给另一个内核,而用户空间的脚本恰恰是触发这个行为的扳机。Linux在这里表现得不像传统的分层系统,更像一个能自我修改的解释器——读取一段描述(20MB脚本),实时生成新的运行时环境。

Astrid在文中用了个精准的类比:This piece of malware writes an OS to "k" and "r" and replaces the current OS with that OS。她故意用malware(恶意软件)这个词,因为从技术行为上看,这确实符合入侵特征:未经授权替换系统核心。区别在于授权链——用户主动输入了sudo sh。

14.31MB的传输,零秒停机

整个流程的网络开销是14.31MB,解压后20MB,执行时间取决于带宽和磁盘速度。传统重装系统需要分钟级停机,kexec方案把停机时间压缩到内核切换的那几毫秒——旧内核的最后一个系统调用返回后,新内核的第一个指令立即接管。对于物理服务器,这意味着不需要进机房按电源键;对于云主机,理论上可以实现"热迁移"到完全不同的内核版本。

但代价是脆弱的。cpio归档里的内核必须匹配当前硬件架构,initrd(初始化内存盘)要包含足够的驱动来挂载根文件系统。Astrid的脚本没有处理这些兼容性检查——它假设目标环境是可控的。这也是她把实验代码托管在个人域名(astrid.tech)而不是主流发行版仓库的原因:这玩意不是产品,是概念验证。


技术社区对这类实验的反应历来分裂。一部分人看到的是安全风险:如果攻击者能诱导用户执行类似管道,就能在不留日志的情况下完全替换系统。另一部分人看到的是架构可能性:把操作系统当成可解释执行的脚本,意味着部署粒度可以从"整机镜像"下沉到"内核函数级别"。

从管道到范式

Astrid的系列文章标题叫"Linux is an interpreter",这篇是独立附录。核心论点藏在她轻描淡写的技术实现里:当操作系统能解析并执行描述自身的代码时,它和Python、JavaScript这类解释器的界限就变得模糊。区别只在于解释的对象——不是AST(抽象语法树),而是ELF二进制和cpio归档。

这种视角转换有实际工程意义。容器技术(Docker、systemd-nspawn)是在用户空间模拟隔离环境,kexec则是在内核空间直接替换运行时。前者轻量但共享内核,后者彻底但成本高昂。Astrid的20MB脚本尝试走中间路线:用脚本描述目标系统,用kexec完成切换,把"重装系统"变成一条可版本控制的命令。

她在代码注释里埋了个细节:set -x。这是shell的调试模式,会把每条执行的命令打印到stderr。在准备接管整个系统的脚本里开调试,像是故意留下痕迹——或者只是习惯。毕竟当kexec --exec执行后,旧系统的所有进程、包括这个shell本身,都会被强制终止。调试输出是留给旁观者(如果有的话)的最后讯息。

GitHub仓库里没有README解释这个实验的终极目标。但结合她前作讨论的"可复现系统构建",一条线索浮现出来:如果操作系统可以通过管道即时生成,那么"基础设施即代码"就能覆盖到最底层的内核配置。不再是"启动一台装好的机器",而是"执行一段描述,得到对应的运行时"。

这个愿景距离生产环境还有多远?kexec的硬件兼容性列表、initrd的驱动完备性、安全启动(Secure Boot)的签名验证,都是现实的绊脚石。Astrid的脚本 explicitly 绕过了这些——它要求关闭Secure Boot,否则kexec --load会失败。这是技术演示和工业级方案之间的典型鸿沟:前者证明可能性,后者处理可能性边缘的所有异常。

她在文末没有总结,只是展示了文件类型检测的输出:r.cpio: ASCII cpio archive。像是说,拆解到这里,剩下的你自己看。20MB的base64躺在那里,可以被任何人解码、分析、修改。这种开放性和命令本身的危险性形成张力:她既展示了如何用最短路径劫持系统,也展示了如何审计这个劫持工具。

最后的问题是留给执行者的:当你输入sudo sh的那一刻,你信任的是Astrid的技术声誉,还是自己已经审阅过那20MB的内容?管道符的便利性和安全性之间的古老矛盾,在这个实验里被推到极端——14.31MB的数据流,足以重新定义你机器上的"操作系统"四个字意味着什么。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
三个邻国已经行动,齐刷刷做出同一个选择:拼尽全力对接中国

三个邻国已经行动,齐刷刷做出同一个选择:拼尽全力对接中国

梦史
2026-03-30 08:21:02
国家出手擒下的3名华人首富,看看他们干的事,根本不值得饶恕!

国家出手擒下的3名华人首富,看看他们干的事,根本不值得饶恕!

天马幸福的人生
2026-03-30 05:11:19
朝鲜经济落后吃不饱饭,却能养得起百万大军,到底如何做到的?

朝鲜经济落后吃不饱饭,却能养得起百万大军,到底如何做到的?

世界圈
2026-03-29 02:20:03
国务院任命香港特别行政区政府政制及内地事务局局长

国务院任命香港特别行政区政府政制及内地事务局局长

新京报
2026-03-30 09:29:16
张檬晒广州新家,11个月儿子能吃一大碗辅食,被仨人照顾白白胖胖

张檬晒广州新家,11个月儿子能吃一大碗辅食,被仨人照顾白白胖胖

八怪娱
2026-03-30 09:07:22
气温回暖,猝死的人越来越多?医生强调:宁睡到中午,也别做5事

气温回暖,猝死的人越来越多?医生强调:宁睡到中午,也别做5事

垚垚分享健康
2026-03-30 11:09:57
哈里王子再次请求和解,想带孩子和国王团聚,威廉的态度是关键

哈里王子再次请求和解,想带孩子和国王团聚,威廉的态度是关键

人物档案局
2026-03-30 13:58:20
张志新的儿女今何在?背后的真相令人泪目

张志新的儿女今何在?背后的真相令人泪目

深度报
2026-03-01 23:48:59
官宣离婚,全网恭喜!豪门忍辱12年,她终于反击:获赔665亿分手费,过程太精彩···

官宣离婚,全网恭喜!豪门忍辱12年,她终于反击:获赔665亿分手费,过程太精彩···

背包旅行
2026-03-30 15:05:03
中东突发,紧急降准!

中东突发,紧急降准!

中国基金报
2026-03-30 15:22:39
回加拿大生活的大山,60岁须发皆白很沧桑,重庆妻子仍风韵犹存

回加拿大生活的大山,60岁须发皆白很沧桑,重庆妻子仍风韵犹存

素衣读史
2026-03-25 21:05:22
狂赚2194亿元股价却跌得“头疼”!2025券商业绩爆表背后,4月抄底还是跑路?

狂赚2194亿元股价却跌得“头疼”!2025券商业绩爆表背后,4月抄底还是跑路?

华夏时报
2026-03-30 08:09:28
有这么漂亮的妻子,还能生出这么可爱的女儿,男人好幸福啊

有这么漂亮的妻子,还能生出这么可爱的女儿,男人好幸福啊

动物奇奇怪怪
2026-03-30 13:02:55
乌干达站队了?正式向世界宣布:伊朗若继续打以色列,会让他好看

乌干达站队了?正式向世界宣布:伊朗若继续打以色列,会让他好看

共工之锚
2026-03-30 15:39:55
爆传男篮拟归化伯里斯!他是谁?归化可能性到底有多大?

爆传男篮拟归化伯里斯!他是谁?归化可能性到底有多大?

你看球呢
2026-03-30 14:30:25
好变态!1090投1000中!92%的命中率炸裂了!!

好变态!1090投1000中!92%的命中率炸裂了!!

柚子说球
2026-03-29 17:52:30
庞麦郎转发李荣浩维权微博并提及华晨宇,疑似重提《我的滑板鞋》版权纠纷,华晨宇工作室发布历史声明:冷饭又炒,不再回应

庞麦郎转发李荣浩维权微博并提及华晨宇,疑似重提《我的滑板鞋》版权纠纷,华晨宇工作室发布历史声明:冷饭又炒,不再回应

潇湘晨报
2026-03-30 13:42:12
俄国对中国统一大业的态度大变?台海若开战,俄军会有什么动向?

俄国对中国统一大业的态度大变?台海若开战,俄军会有什么动向?

魔神主的仇恨
2026-03-30 14:23:27
网贷迎最强监管,一刀切24%,要么合规要么去死,九成平台将出局

网贷迎最强监管,一刀切24%,要么合规要么去死,九成平台将出局

潮鹿逐梦
2026-03-30 11:17:52
崩得最彻底的专业,网友哭诉:孩子600多分进的,如今找不到工作

崩得最彻底的专业,网友哭诉:孩子600多分进的,如今找不到工作

黯泉
2026-03-28 20:41:06
2026-03-30 16:52:49
摸鱼算法
摸鱼算法
致力于用最前沿的AI技术,换取更多发呆时间的三十岁青年。
445文章数 2关注度
往期回顾 全部

科技要闻

DeepSeek性能异常问题已解决,服务恢复

头条要闻

单套最低5400万 北京豪宅暴雷几十户业主办不了房产证

头条要闻

单套最低5400万 北京豪宅暴雷几十户业主办不了房产证

体育要闻

想进世界杯,意大利还要过他这一关

娱乐要闻

单依纯凌晨发长文道歉!李荣浩再回应

财经要闻

油价冲击,有些亚洲货币先扛不住了!

汽车要闻

理想i9要来了!外形似小号MEGA 能冲击高端纯电市场?

态度原创

教育
旅游
健康
时尚
本地

教育要闻

义务教育摇号“可以操作”?教育局辟谣:典型骗局,请别入坑!

旅游要闻

赴泰旅游价格或上涨,泰国拟向外国游客收300泰铢

干细胞抗衰4大误区,90%的人都中招

来到1980的周也,好毛利兰

本地新闻

用Color Walk的方式解锁城市春日

无障碍浏览 进入关怀版