请教编译器高手:UNIX之父的后门
最近拜读了KEN THOMPSON的大作《Reflections on trusting trust》,由于水平太菜,遇到无法理解的疑难
一、第1个binary cc是怎么诞生的。
THOMPSON说C编译器是用C写成,通过自我编译产生的,并说是个“鸡生蛋、蛋生鸡”的问题。难以理解cc.c在还没有binary cc时,怎么能编译成cc。
二、THOMPSON在cc.c中留下了2个后门,第1个针对login,第2个针对cc,但只给出了代码大纲,没有详细代码,有哪位高手有这2个后门的详细代码资料,给详细讲讲。
下面是代码大纲,请注意当中的pattern和backdoor没有详细代码。
compile(s)
char *s
{
if (match(s,"pattern1"){
compile("backdoor1"
return;
}
if (match(s,"pattern2"){
compile("backdoor2"
return;
}
......
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
老兄,有这书的电子版吗?