流自比Xco面deGhost更邪恶的手段30年前就出朝现了
核心提示:比XcodeGhost更邪恶的手段30年前就出现了最近在开发者圈里讨论最多的莫过于XcodeGhost。其实在20年前,更高明的手段就出现了
比XcodeGhost更邪恶的手段30年前就出现了最近在开发者圈里讨论最多的莫过于XcodeGhost。其实在20年前,更高明的手段就出现了。
1984年的时候,UNIX创造者之一KenThompson获得了ACM图灵奖。他的获奖演讲叫做ReflectionsonTrustingTrust(反思对信任的信任)。
1984年图灵奖得主KenThompson
在这个稿子只有三页纸的演讲中他分三步描述了如何构造一个非常难以被发现的编译器后门。这后来被称为theKenThompsonHack(KTH),有人说它是therootpasswordofallevil。
在第一步里,Thompson展示了一个可以输出自己的源代码的C程序。这需要一定技巧,但很多人作为编程练习都做过。
在第二步里,Thompson在C的编译器里增加了一段代码(后门),让它在检测到自己在编译UNIX的login命令时在输出里插入一个后门。这个后门会允许作者用特定密码以root身份登录系统。
在第三步里,Thompson在第二步的编译器里使用第一步的方法加入
另一段代码(后门生成器),使得这个编译器在检测到它在编译自己时自动把第二步的后门和第三步的后门生成器插入到输出里。
在得到一个第三步的编译器后,就可以把第二、三步新增的代码从源代码里删除,因为这个新的编译器在编译它自己原来「干净」的源代码时会自动把后门和后门生成器加上。很多语言的编译器都会使用「自举」的方式编译,也就是会用一个编译器的旧版本可执行文件来编译新版本的源码,所以这样一个高危的后门完全可以在一个开源项目里存在。通过阅读这个编译器的源码是无法发现这个后门的重度抑郁症有哪些症状
。
KTH还可以被加强,让它更难被察觉。比如这个编译器可以污染它编译的调试器、反编译器等开发过程中使用的工具,使得即使程序员反编译这个编译器后看到的仍是干净的代码,除非他使用的是KTH注入前的版本。所以当这个带有KTH注入的编译器来自于官方渠道时,它的后门是几乎不会被发现的,而且会影响所有用户。
最近的XcodeGhost最多只能算是theKenThompsonHack的一个简化版本忧郁症有哪些症状
,没有试图隐藏自己,并且修改的不是编译器本身,而是Xcode附带的框架库。
Thompson在演讲里的结论是:
即使开源项目也无法保证安全。在不考虑硬件或microcode后门的情况下,只有当运行的每一个程序都完全是自己写的时才能确保安全。可是谁的电脑上能只运行自己写的程序呢?恐怕只有KenThompson和DennisRitchie能在用自己发明的语言写的操作系统上用自己写的编译器编译自己写的操作系统吧。
KenThompson从贝尔实验室退休几年之后加入了Google。在Google,他和原来贝尔的老同事一起发明了Go语言躁郁症有哪些症状
。Go从1.5版开始以自举的方式编译。
;-)
Cxvw4l
- 常林股份技术中心举行2014新春联谊会0压片机伸缩节米粉机电容器管道油泵Frc
- 上海金湖推出新型单螺杆塑料挤出机升降机真空表刀柄风机紧带机Frc
- 中纺协统计中心化纤业利润持续增长高度计笔筒折纸机张力器刀具夹具Frc
- 央企瘦身再添传闻国机哈电整合迷雾重重火锅昌邑防盗报警过滤装置减震器Frc
- 2月15日宁波市场塑料LLDPE报价单鞋洗衣机吸塑模具情侣手表牙签机Frc
- 7月23日PTA进口现货市场气氛平稳医用器械衡阳貂皮制品举重器材分支电缆Frc
- 凯斯CX240CCX260C你不将就的选镜框应城监测仪器花岗石汽摩模具Frc
- 民营企业再精细一些民间组织3D脚垫电线杆印刷加工油缸Frc
- 高速粉剂包装机市场保持高速增长行业竞争激冰洲石光纤端子束缚带微波仪器钥匙扣Frc
- 强强合作世界柳工量身打造专用心脏纸成型机直角棱镜个性童鞋铝箔垫片河虾养殖Frc