科百科
当前位置: 首页 范文大全

巴啦啦小魔仙里面的诡异细节(一个计算机漏洞引发的脑洞:为何巴啦啦小魔仙施法前要念一段咒语)

时间:2023-08-15 作者: 小编 阅读量: 5 栏目名: 范文大全

简单解释一下,比特是信息量的基本单位,计算机的0101010中的0或1就是一个比特。正常情况下,程序A没有权限访问程序B。于是,在相当一段时间里,这种攻击方法停留在理论阶段,或者说,只有站在巅峰的极少数安全研究人员才能掌握这项绝技。很多科幻作品乃至于科学作品里都提到四维空间、五维空间。直到后来,人类以另一种方式——量子纠缠,重新发现到这个BUG。

文|谢幺

1.一个儿时的疑惑

我盯着电视,小小的眼睛藏着大大的疑惑:为什么所有人施法都要念一段叽里呱啦的咒语,或者做出一些迷惑行为?

你看,哈利波特是这样:

看着像是骂街

奇异博士是这样:

像是颈椎不舒服

中国的道士施法前要念急急如律令,巴啦啦小魔仙也要巴拉拉能量:

就连日本的火影忍者放招也要不停地搓手结印……

这些莫名其妙的咒语和动作是单纯为了酷炫吗?可是明明很尴尬啊,而且极其影响打斗效率有木有?除非……这是启动魔法招数的必备条件?可是原理是什么呢?

若干年后,那个脑子里想着奇怪事情的孩子,已经长成一个科普作者,也就是现在的我。前几天我无意中看到一篇文章,讲一种非常奇特的黑客攻击手法,读到原理时,我仿佛醍醐灌顶,记忆像一万匹草泥马奔袭而来,儿时的疑惑竟瞬间全都解开了!

2.一个计算机漏洞

2014年,卡梅隆大学的一位研究人员发表了一篇论文《无需访问,翻转内存里的比特》(Flipping Bits in Memory Without Accessing Them),提出一种叫 Rowhammer 的攻击方法。

简单解释一下,比特是信息量的基本单位,计算机的0101010中的0或1就是一个比特。“无需访问,翻转内存里的比特”又是啥意思呢?如果把软件空间看作《黑客帝国》里的世界,这就相当于主角尼奥凌空一指,大喝一声,就能改掉远处的某个东西的参数,把1改成0。

于是,尼奥就有了超能力,比如隔空把控制子弹是否移动速度的参数从1改成0,就可以让它静止。

在实际当中,这种攻击有啥用呢?黑客可以用来破解程序、入侵计算机呀。

比方说,电脑里有一个加密了的程序 B,原本程序A打不开它,因为没有密码,现在有了Rowhammer攻击,只需要控制程序A对着程序B“大喝一声”,就能隔空改掉(不需接触)程序B里头控制密码开关的参数,把1改成0,让它打开。

那它是怎么做到的呢?

正常情况下,程序A没有权限访问程序B。

我们知道,所有程序都是运行在内存里的,无论这个操作系统是什么,也无论程序是用什么语言编写的,最终都可以表示成0101这样的二进制编码。

既然如此,程序B的二进制代码里就一定有某个参数是用来控制锁开关的,只要找到这个参数,是0的话就改成1,锁就会被打开。

可是问题来了,在软件应用层面,程序A访问无法访问程序B的那一段0101010101,因为没有权限,自然也就没法改掉那个参数。

但前文提到的那篇论文的讲了一个特别邪门的办法。我们知道,所有程序的0101010编码最终都是以电路开合(或者电荷)的形式存储在内存的晶体管里,1代表“合”,0代表“开”。

内存条当然不可能无限长,所以它实际是一些方格子。

一个指甲盖大小的内存芯片上可能有几千万上亿个这样的小格子:

你其实可以想象,计算机内存是由无数个“小算盘”构成的,算盘珠子在上面就是1,在下面就是0,无数个小算盘紧紧挨着,以此来存储和处理信息,构成一个内存芯片。

那篇论文里讲了这么一个奇特的现象:由于内存芯片做得太小,内存单元挨得太近,只要疯狂读写某一行内存单元,就会产生电磁效应,使得它相邻的内存单元的状态也发生反转。

这就好比是疯狂拨动算盘珠子的某一列,由于算盘珠子挨得太近,会不小心碰到旁边的一颗珠子,使之发生变化。

这个发现真是太有用了,这就为软件空间的“隔空施法”创造了可能性。

由于内存芯片的设计原理,一个程序在物理层面并不是以“一整块”的形式存在,而是分散在不同的地方。

这就意味着,哪怕在软件层面,程序A和程序B完全独立,在物理层面,程序A的某一部分也可以跟程序B的某一部分紧紧相邻。那么就存在一种可能性,只要我疯狂读写程序A的特定部分,就能改变相邻的程序B的特定部分。

这种Rowhammer攻击最厉害之处在于,所以不管你用的什么设备,手机或是电脑,不管你什么操作系统,是 Linux、Windows、Android、iOS,全部通杀。

但它的利用难度非常大,因为很难很难很难摸清程序和物理内存之间的映射关系,你想打开程序B的锁,必须在浩如烟海的“010101010”和“开合开合开合”之中,准确找到你需要的那一个。

于是,在相当一段时间里,这种攻击方法停留在理论阶段,或者说,只有站在巅峰的极少数安全研究人员才能掌握这项绝技。

2015年说谷歌的Project Zero团队曾经演示过用这种攻击方法劫持了一台Linux系统的英特尔个人电脑。之后的几年陆陆续续还有一些人展示过,或者研发了相关的工具。

漏洞就讲到这里,接下来该讲(hu)讲(shuo)脑(ba)洞(dao)了。

3.一段毫无根据的脑洞

和计算机的世界一样,我们所在的宇宙,也可以用数学来描述。

也许我们的三维世界之外,也存在另一个我们看不见的“底层世界”。正如电脑里的一个个程序,意识不到晶体管、内存、CPU芯片的存在一样,它们也不知道自己其实只是一个个晶体管的特定开合状态。

魔法是怎么来的?一段叽里呱啦的咒语“巴拉拉能量—华沙加鲁”,一个特定的,看起来莫名其妙的动作,刚好触发了那个看不到的空间里里的内存扰动,再反馈回我们的三维空间,于是就有了明明两个人隔得很远,中间没有任何介质,却能隔空发生作用的魔法。

很多科幻作品乃至于科学作品里都提到四维空间、五维空间。

电影《星际穿越》里头有一个场景:男主角被吸进黑洞,穿越到五维空间,通过引力作用,使得自己家里时钟的秒针跳动,形成一段摩斯电码,把拯救世界的重要信息传递给女儿,父女二人跨越时间空间的情况下实现了信息传递。

星际穿越的五维世界

你有没有觉得,三维空间、四维空间、五维空间和软件世界里的的软件层、二进制逻辑层、物理层有一点类似?

为什么在古代,不论西方、东方都有许多魔法神话传说,到现代却又都消失了?也许是有一天,造物主(系统管理员)忽然觉得魔法让这个世界乱糟糟的,就随手打了个补丁,混淆了三维空间和四维空间的映射关系,于是,原有的魔法咒语就都失效了。

直到后来,人类以另一种方式——量子纠缠,重新发现到这个BUG。

两个相互纠缠的粒子,即便把它们分开很远,只要改变其中一个,另一个也会跟着改变,毫无缘由,中间也没有任何信息传递。

或许,在那个看不见的底层世界里,这两个相隔万里的粒子,其实紧紧相拥在一起。

本文纯属胡说八道,我是谢幺,科技科普作者一枚,日常是把各路技术讲得通俗有趣。想跟我做朋友,可以加我的个人xieyaopro。不想走丢的话,请关注浅黑科技:qianheikeji(别忘了加星标哦)

    推荐阅读
  • 适合大学生用的搜题软件(大学生必备的搜题软件)

    大学生用的搜题软件有上学吧找答案、师兄帮帮、优题宝等。是学员作业帮手,致力于帮助学员顺利通关考证考试。核心功能是师妹(女性)求助,师兄(男性)提供帮助。只要你发布需求,系统就会根据异性、距离、发布时间推荐匹配愿意帮助你的师兄师妹。是一款帮助大学生解决交友、求职、学习等困惑的软件。

  • 我的世界开的最快的矿车(我的世界矿车和船速度大比拼)

    在寻找《我的世界》最快交通工具的路上,方块菌一直是没有懈怠的!之前给大家介绍了一种速度极快又比较省材料的“弯曲铁路”,甚至比铺一排动力铁轨都要快!而且,在冰,浮冰和蓝冰三种冰方块之间,还有加速的区别!经过实验,方块菌发现,在最快的蓝冰上划船的速度比之前说过的“弯曲铁路”要快不少!

  • 牡丹花朵的做法(牡丹花朵怎么做)

    牡丹花朵的做法制作牡丹的花蕊,将一块中等大小的棉花卷成球状。用纸将棉球包裹住,并用彩色的绑带把它固定好。制作牡丹花瓣,准备一张至少10cm宽的方形皱纹纸。将牡丹花瓣的模板放在皱纹纸上,按照模板的纹理剪出25个花瓣。之后继续在雄蕊周围一圈一圈的添加花瓣,注意位置错落有致。在底部附近添加最后的花瓣,并最终检查所有花瓣和花带都缠绕到线上固定好。

  • 薄荷不仅能泡茶还能泡脚(薄荷泡脚有什么作用)

    以下内容大家不妨参考一二希望能帮到您!薄荷不仅能泡茶还能泡脚缓解疲劳。薄荷叶中含有薄荷叶等成分,具有一定活血化瘀的作用,用来泡脚,有助于促进身体的血液循环;可以通畅经络、血管,缓解足部疲劳,放松身心。薄荷叶中含有一些具有消炎抑菌作用的成分,若是经常用来泡脚食用,对于一些患有足疾的人群,有利于减轻足部的炎症。睡前用新鲜的薄荷叶煮水泡脚,能够一定程度上减轻疲劳感,使人体尽快的进入睡眠状态。

  • 摩托骑行装备性价比高(摩托车车行只推荐RK链条)

    但是在2021年,原本专精于制作齿盘的SUNSTAR宣布推出链条产品!因此,这次编辑部将详细分析SUNSTAR,整理出它有哪些好处、哪些劣势,预测SUNSTAR能不能在链条产品中杀出重围!从影片中也能发现SUNSTAR拥有相当大的生产设施,并且擅长金属加工。SUNSTAR透过优化齿盘和链条间的公差,在最大限度内成功延长了彼此的使用寿命!这就是选择SUNSTAR链条需要做的全部工作。从上面的叙述可以发现SUNSTAR的链条有许多优点,而更令人惊讶的是,SUNSTAR的链条产品定价比其他品牌还要便宜!

  • 关于读书方法的名言(读书的名言介绍)

    接下来我们就一起去了解一下吧!关于读书方法的名言读书无嗜好,就能尽其多。不先泛览群书,则会无所适从或失之偏好,广然后深,博然后专。——鲁迅读书之法,在循序渐进,熟读而精思。——朱煮读书务在循序渐进;一书已熟,方读一书,勿得卤莽躐等,虽多无益。——胡居仁读书是学习,摘是整理,写作是创造。——吴晗看书不能信仰而无思考,要大胆地提出问题,勤于摘录资料,分析资料,找出其中的相互关系,是做学问的一种方法。

  • 200g白鹅绒相当于多少白鸭绒(90白鸭绒200g多少度)

    依照鸭绒含绒量最高90,鹅绒含绒量最高95换算,200g白鹅绒相当于212g白鸭绒。白鹅绒的透气性非常好,其含绒量非常高,有很好的延展性,具有轻、柔、软的特性,常用于填充鹅绒被、鹅绒羽绒服等,以达到保暖作用。

  • 去掉脸部皱纹(去掉脸部皱纹方法)

    下面更多详细答案一起来看看吧!去掉脸部皱纹可以采用微整的方法,比如注射肉毒素,皱纹就会慢慢消失。另外也可以使用填充法,填充玻尿酸。可以购买一些功效性的面霜。在涂抹面霜的时候,用手做按摩,疏通脸部的血管。一般有皱纹可能是由于年龄老化或者是脸部缺水,平常可以多敷一些补水的面膜。

  • 鲶鱼脏是真的吗(鲶鱼脏是不是真的)

    以下内容大家不妨参考一二希望能帮到您!鲶鱼脏是真的吗鲶鱼生长的环境比较脏乱,但是鲶鱼本身只要清洗干净是不脏的。鲶鱼可以人工养殖,在养殖的过程中养殖者们一般都会做好换水的工作,保证水质,并且为它们提供正常的食物,这样的鲶鱼是不会很脏的。在购买鲶鱼作为食材的时候,一定要购买质量好的,可以在正规的商店中购买。在食用鲶鱼之前,也需要将鲶鱼清洗干净,这样鲶鱼就不会脏了,可以放心食用。

  • 机动车转籍上牌要哪些手续(私家车如何转籍退牌上牌)

    机动车转籍上牌要哪些手续前提:本人刚买了新车,沪牌额度只有一个,旧车又不想卖,所以就想着将旧车的沪牌退下来装在新车上,这事又不能说干就干,要合法合规,思前想后,决定将旧车转籍上外牌(苏牌),上外牌前提是必须有外地居住证,外地又没有亲戚,只好联系“牛哥”了。