1997年国会听证会
情报和安全


这是第27章实用的UNIX和互联网安全,第二版Simson加芬克尔清单,摘录国会许可。版权所有©1996年由O'Reilly&Associates公司。无印刷或在线拷贝可以用于任何其他目的未经出版者书面许可制成。为了得到这本书,与发布商联系在下面的地址或者检查当地的书店。

O ' reilly & Associates
101莫里斯街
塞瓦斯托波尔,CA 95472

1-800-998-9938(美国或加拿大)
1-707-829-0515(国际或本地)
1-707-829-0104(FAX)
http://www.ora.com


27.你信任谁?

当您的计算机会告诉你,没有人通过你的防御坏了,你怎么知道,你可以信任它是什么意思吗?

你能信任你的电脑吗?

几分钟,试图想就像一台计算机犯罪。几个月前,你是从大Whammix,在城市的另一边的大烟囱雇主解雇,现在你工作了竞争的公司,做大Bammers。您在Bammers工作是企业间谍活动;你已经花了上个月试图闯入大Whammix的中央邮件服务器。昨天,你在一个版本发现了一个错误发送邮件1Whammix正在运行,你获得了超级用户权限。

你现在在干什么?

你的主要目标是获得尽可能多的有价值的公司信息,并且在不留下任何可能让你被抓住的证据的情况下这么做。但是,你还有一个次要目标:掩盖你的步骤,这样你在Whammix的前雇主就永远不会发现他们丢失了信息。

意识到祸不单行发送邮件守护进程可能有一天被堵塞,你决定创建一个新的后门,你可以用它来访问公司的电脑的未来。最容易做的事情是修改计算机的/斌/登录编程接受隐藏密码。因此,你把你自己的源代码的副本login.c并修改它以允许任何人以as登录如果他们键入一个特定序列的显然随机密码。然后将程序安装为/bin/passwd

你想你的数据收集的证据隐藏,所以你也修补/bin/ls程序。当程序被要求列出在你存储你的饼干工具和拦截邮件目录的内容,它显示关你的文件。您修复这些程序,以便校验报告/usr/bin/sum都是一样的。然后,您操作系统时钟或编辑原始磁盘,以设置后门中的所有时间回到它们的原始值,以进一步隐藏您的修改。

你会定期连接到电脑上,所以你也要修改在/ usr / bin中/ netstat的这样它就不会显示大Whammix IP子网和更大的子网之间的连接。您还可以修改/usr/bin/ps/usr/bin/who程序,这样他们就不会列出通过这个特殊后门登录的用户。

内容,你现在花未来五个月定期登录到在大Whammix邮件服务器,使所有针对营销人员的电子邮件的副本。你这样做说得最多的一天,你在更大的Bammers离开你的工作,并移动到另一个公司的新位置。在最后一天,你运行一个shell脚本,你已经亲自编写,恢复所有的硬盘到原来的配置上的程序的。然后,作为临别的手势,你的程序引入了细微的修改进入大Whammix主要会计数据库。

技术小说?几乎不。由中间20世纪90年代,对电脑的攻击,其中系统二进制文件进行了修改,以防止入侵者的检测已变得平常。经过复杂的攻击者获得超级用户权限,你发现他们的存在常见的方式是,如果他们犯了一个错误。

哈利的编译器

在麻省理工学院媒体实验室早期,有个研究生不受实验室其他学生的欢迎。为了保护他的隐私,我们称这个不受欢迎的学生为“哈里”。

哈利讨厌又粗鲁,他也不是一个很好的程序员。所以实验室里的其他学生决定捉弄他。他们修改了共享计算机上的PL/1编译器,以便程序能够确定运行它的人的名字。如果运行编译器的人是Harry,程序会像往常一样运行,报告语法错误之类的,但它会偶尔、随机地不产生最终的输出文件。

这个恶作剧给哈利带来了无数的麻烦。他会对他的程序做一个小改动,然后运行它,偶尔程序会像他修改之前那样运行。他会修复bug,但bug仍然存在。但是,每当他去寻求帮助时,实验室里的另一个学生就会坐在终端前,登录,一切都会正常工作。

可怜的哈利。这是个残忍的把戏。可是,不知怎么的,大家都忘了告诉他这件事。他很快对整个企业感到失望,最终离开了学校。

你认为你系统里的那些随机错误是偶然出现的吗?

信任信任

也许关于计算机安全与信任固有问题的最权威的描述是在Ken Thompson的文章中,在信任信托思考2汤普森介绍了种植在UNIX的早期版本研究的一个后门。

后门是对…的修改/斌/登录程序,将允许他在任何时候获得对系统的超级用户权限,即使他的帐户已被删除,通过提供预定的用户名和密码。虽然这样的修改是容易做,它也是一个容易通过查看计算机的源代码来检测。所以汤普森修改计算机的C编译器来检测,如果它被编译login.c程序。如果是这样,则用于后门附加代码将自动地被插入到对象的代码流,即使代码不存在原来的C源文件英寸

汤普森现在可以login.c程序由同事检查,编译程序,安装/斌/登录可执行文件,但放心,后门是牢固。

但是如果有人检查了C编译器本身的源代码呢?汤普森也想到了这个例子。他进一步修改了C编译器,使其能够检测自己是否在编译源代码。如果是,编译器将自动插入特殊的程序识别代码。经过一轮编译后,Thompson将所有原始源代码放回原位。

汤普森的实验就像一个魔术。有没有后门的login.c在C编译器的源代码中没有后门,但是在最终的编译器和登录程序中都有后门。唵嘛呢叭咪吽!

编译器和登录程序执行哪些隐藏操作?

什么是超级用户可以和不能做什么

正如所有这些示例所说明的,技术专长与计算机上的超级用户特权相结合是一个强大的组合。它们一起让攻击者改变了计算机操作系统的本质。攻击者可以修改系统以创建在正常情况下不会出现(如果有的话)的隐藏目录。攻击者可以更改系统时钟,使他们今天修改的文件看起来好像在几个月前就已经修改过了。攻击者可以伪造电子邮件。(实际上,任何人都可以伪造电子邮件,但攻击者可以做得更好。)

当然,也有一些事情,攻击者不能做,即使攻击者是一个技术天才,并已全面进入您的计算机和它的源代码。攻击者不能,例如,解密已经被加密了一个完美的加密算法的消息。但是,他可以改变代码的下你键入时间记录的关键。攻击者可能无法设定您的计算机进行数学计算的十倍的速度比现在呢,虽然有这样做几个安全隐患。除非他们拆开你的电脑,它已经写在另一个文件后,大多数攻击者无法读取文件的内容,并把硬盘送到实验室。然而,随着权限的攻击者可以修改你的系统,使文件已被删除,仍可访问(给他)。

在每一种情况下,你怎么判断是否发生了攻击?

在“假设”情况下,可采取相当的长度。考虑攻击者是谁试图隐藏在计算机的修改/斌/登录计划:(见表27-1)。

表27-1

“什么,如果”方案

攻击者可能会做什么获得root用户访问后

您回应

攻击者植物在后门/斌/登录允许未经授权的访问的程序。

使用PGP创建数字签名
所有的系统程序。你每天检查签名。

攻击者修改您正在使用的PGP的版本,以便它将报告签名的位置/斌/登录验证,即使它没有。

你复制/斌/登录在使用可信的PGP副本对其进行验证之前,将其复制到另一台计算机上。

攻击者通过添加可加载模块来修改您计算机的内核,以便当/斌/登录是通过TCP连接发送的,原始/斌/登录,而不是修改后的版本,被发送。

您将PGP的副本放在可移动硬盘上。您挂载硬盘以执行签名验证,然后卸载它。此外,你把一个好的副本/斌/登录到你的移动硬盘,然后复制好的方案了定期安装的版本。

攻击者恢复对系统的控制,并进一步修改内核,以便修改/斌/登录在加载程序后将其修补到运行程序中。的任何读取内容的尝试/斌/登录文件会导致在原来的,未修改的版本。

重新安装整个系统软件,并配置系统从只读设备(如CD-ROM)引导。

因为现在系统从CD-ROM启动,你不能轻易的漏洞被发现更新系统软件。一个错误,攻击者等待突然出现在你安装的程序之一,如发送邮件。当错误被报告时,攻击者将准备攻击。

你的行动…

如果你觉得这个描述听起来像一盘国际象棋,你是对的。实用的计算机安全是一系列的行动和对抗,攻击和防御。就像下棋一样,成功取决于预测对手的走法并提前制定对策。仅仅对对手的动作做出反应是失败的秘诀。

要注意的关键一点,但是,是什么地方,在一定程度上,你必须相信你正在使用。也许你信任的硬件。也许你信任CD-ROM。但在一定程度上,你需要信任你手头上的东西。完善的安全是不可能的,所以我们需要解决的下一个最好的事情 - 在其上建立合理的信任。

问题是,你把信任放在哪里?

你可以相信你供应商?

你的电脑有点可疑。您发现系统软件上的修改日期已经更改。似乎攻击者已经侵入,或者某种病毒正在传播。那么你会怎么做呢?您将文件保存到备份磁带,格式化硬盘,并从原始分发介质重新安装计算机的操作系统和程序。

这真的是正确的计划吗?你永远不会知道。也许你的问题是入室盗窃造成的。但有时,最糟糕的是那些首先卖给你硬件和软件的人给你带来的。

硬件错误

事实是,英特尔奔腾处理器有一个浮点问题,在执行一些分部的操作时,偶尔会导致严重的精度损失,这在1994年被公开。英特尔的官员不仅知道这件事,而且显然他们决定在公众产生重大负面反应之前不告诉他们的客户。

磁盘驱动器的一些厂商已经与他们的产品没有突然和灾难性的,有时内被放置在使用几天的问题。当他们与UNIX使用的其他磁盘驱动器发生故障,但与供应商自己的专有操作系统。原因是:UNIX没有运行必要的命令绘制出媒体上的坏块。然而,这些驱动器被广泛用于买与UNIX操作系统使用。

此外,在各种终端和计算机中都存在许多有效自毁序列的情况。例如,数字公司原来的VT100终端有一个转义序列将终端从60Hz刷新率切换到50Hz刷新率,另一个转义序列将其切换回来。通过反复向VT100终端发送这两个转义序列,恶意的程序员可能会导致终端的反激转换器烧坏——有时是非常壮观的!

指令类似的序列可以用来打破了原有的IBM PC视频显示器上的单色显示器。

在分配盘病毒

几年前,有一个推定在计算机安全领域的分布式计算机软件制造商花时间和尽职调查,以确保他们的计算机程序,如果不是免费的错误和缺陷,至少免费的计算机病毒和明显的计算机安全漏洞。用户被警告不要运行共享软件,也不要从公告板系统下载程序,因为这些程序可能包含病毒或木马。事实上,至少有一家公司,制造了一个共享软件病毒扫描程序,赚了一笔钱,告诉世界上所有其他人的共享软件都有潜在的不安全。

时间和经验告诉我们并非如此。

近年来,一些病毒已经分发与共享,但我们也看到分布在收缩包装程序许多病毒。该病毒来自小公司,并从主要计算机系统的制造商。即使是微软分布有隐藏的Microsoft Word宏中的病毒一个CD-ROM。人口普查局分布在CD-ROM上有一个病毒。其中一个病毒在分发磁盘所带来的问题是,许多安装程序要求用户禁用任何反病毒软件运行。

面向大众市场的软件行业也遇到了逻辑炸弹和特洛伊木马的问题。例如,在1994年,Adobe公司为麦金塔电脑发布了一个新版Photoshop 3.0,带有一个“定时炸弹”,旨在使程序在未来的某个时候停止工作;这颗定时炸弹在beta测试周期中被无意中留在了项目中。因为商业软件不是以源代码的形式发布的,所以您不能检查程序并判断是否存在这种故意的错误。

像收缩包装节目,共享软件也是鱼龙混杂。有些共享软件网站有系统管理员谁是非常认真的,和谁去煞费苦心使其可用于下载前扫描病毒扫描他们的软件库。其它网站没有控制,并允许用户放置文件直接在下载库。在1995年的春天,一个程序调用PKZIP30.EXE由各地的各种在互联网上,并通过美国在线的FTP站点的方式。这个程序似乎是的3.0测试版PKZIP,一个流行的DOS压缩实用程序。但当程序运行时,它删除了用户的硬盘。

bug的软件

考虑以下,相当典型的,对一个分布式软件的免责声明:

性能的任何担保。方案及其相关文件被授权“一样”不保证他们的表现,适销性或适用于特定用途。全部的风险,至于结果与计划绩效假设您和您的受发。应在程序有缺陷,你和你发者(而不是供应商)将承担所有必要的维修,修理或更正的全部费用。

软件有时也有错误。您在磁盘上安装它,而且在某些情况下,它会破坏你的文件或返回不正确的结果。这些例子层出不穷。你可能会认为软件是感染了病毒 - 因为它是感染了病毒,但问题仅仅是编程很差的结果是肯定表现。

如果软件没有在自己的软件信心的创造者和供应商,你为什么要?如果厂商拒绝“......保证,以[其]性能,适销性或适用于任何特定目的,”那么为什么你给他们钱,用他们的软件为您的业务基地?

不幸的是,质量并不是大多数软件供应商优先考虑的问题。在大多数情况下,他们将软件授权给你,附带一个广泛的免责声明(类似于上面),所以在他们上市之前,他们几乎没有动机去确保每个bug都被根除了。他们的态度通常是“在客户找到所有的bug之后,我们将在下一个版本中修复它。”的n they introduce new features with new bugs. Yet people wait in line at midnight to be the first to buy software that is full of bugs and may erase their disks when they try to install it.

其他错误比比皆是。回想一下,巴顿米勒教授在第23章提到的第一项研究中,发现,超过三分之一的几个UNIX供应商提供的共同方案的崩溃或挂起,当他们与生成随机输入一个简单的程序测试。五年后,他重新进行了测试。结果?虽然大多数供应商已经提高到这里“只”四分之一的程序崩溃,一个供应商的软件表现出46%的失败率!这种失败率,尽管广为流传,该报告的出版,尽管米勒的团队提供免费的测试代码供应商。

最可怕的是,Miller的团队所进行的测试是最简单、最不有效的测试形式之一(随机、黑盒测试)。供应商做任何合理的测试吗?

1995年,一位来自大型PC软件供应商的软件工程师来到普渡大学进行招聘。在他的演讲中,学生们报告说,他说在他的公司工作的十大理由中有两个是“你不需要为软件工程烦恼——你只需要热爱编码”和“你宁愿编写汇编代码而不是测试软件”。As you might expect, the company has developed a reputation for quality problems. What is surprising is that they continue to be a market leader, year after year, and that people continue to buy their software.3

什么是你的供应商的有关测试和良好的软件工程实践的政策?

或者,考虑这样一种情况:某人实现了安全特性,但却没有真正理解“总体情况”。As we noted in "Picking a Random Seed" in Chapter 23, a sophisticated encryption algorithm was built into Netscape Navigator to protect credit card numbers in transit on the network. Unfortunately, the implementation used a weak initialization of the "random number" used to generate a system key. The result? Someone with an account on a client machine could easily obtain enough information to crack the key in a matter of seconds, using only a small program.

黑客的挑战

在过去的十年中,多家厂商纷纷发表声明,他们的系统是安全的,因为他们没有被打破公众的挑战“黑客挑战。”通常情况下,这些挑战涉及到一些供应商把互联网上的系统,并邀请所有来者采取以换取一些象征性的奖金敲击。然后,几个星期或几个月后,供应商关闭该网站,宣称他们的产品无懈可击,并且如果他们的荣誉徽章做广告的结果。但是C onsider如下:

  • 很少有这样的“挑战”是使用已建立的测试技术进行的。它们是特别的、随机的测试。
  • 没有发现问题并不意味着没有问题存在。测试人员可能还没有暴露它们。或者,测试人员可能没有认识到它们。(考虑一下软件发布时出现bug的频率,即使经过了仔细的审查。)此外,您如何知道测试人员将报告他们发现的内容?在某些情况下,在产品卖给很多客户之后,这些信息对黑客来说可能更有价值,因为那时他们会有更有利可图的目标去追求。
  • 很简单,因为供应商不报告成功的渗透并不意味着一个人没有发生 - 供应商可能会选择不报告,因为它会表现不佳的产品反映。或者,厂商可能没有人认识的渗透。
  • 挑战给潜在的歹徒一段时间来练习破坏系统不会受到处罚。挑战也给不法分子借口,如果他们被发现后试图闯入系统(例如,“我们以为比赛还在进行。”)
  • 很少做真正的好专家,在围栏的两侧,参加这样的演习。因此,任何事情通常是由业余完成。(赢得挑战的“荣誉”是不足以将好的引诱挑战想想看:好的顾问可以在某些情况下,命令每天数千元的费用 - 他们为什么要捐出有效的时间和。名字免费广告?)
  • 此外,整个过程中发出了错误的信息:我们应该建立的东西,然后尝试打破他们(而不是在第一时间构建他们的权利),或有打破系统的一些声望和荣耀。我们不通过驱动对他们的各种轿车和卡车,看看他们失败测试桥梁的优势,并宣布他们是安全的,如果在测试过程中没有发生崩溃。

    有些软件设计者可以从土木工程师学到很多东西。因此,可能我们其余的人:在远古时代,如果房子倒塌或桥塌和受伤的人,谁设计的,它被压死在瓦砾作为惩罚的工程师!

    下次你看到广告主用挑战推销产品时,你应该问问挑战者是否真的给了你对产品更多的信心……或者让您相信供应商根本不知道如何真正地设计和测试安全性。

    如果你认为一个安全挑战建立正确的一种信任,然后与我们取得联系。我们有这些神奇的吊坠。没有人穿着一个有过进入系统的,尽管所有谁碰巧身边当系统被开发了计算机用户的挑战。因此,吊坠必须保持了黑客有效。我们将很乐意在一定卖给你。毕竟,我们采用同样严格的测试方法,为您的安全软件厂商,所以我们的产品必须是可靠的,对不对?

    这从来没有得到修复安全漏洞

    还有的通过包含炫目的安全漏洞的计算机制造商分发正版软件的问题。一年多后释放发送邮件版本8,几乎每个主要的UNIX供应商仍在分发其计算机装备发送邮件版本5。(版本6和7是从未发布的中间版本。)虽然版本8比版本5有很多改进,但它也有很多关键的安全补丁。UNIX供应商不愿意采用版本8的疏忽——是他们对计算机安全的放任态度的表现,还是仅仅是紧迫的市场条件的反映?4是两个不同的真的?

    如果许多供应商仍然发布TFTP的版本,默认情况下允许远程用户获得密码文件的副本,情况又会如何呢?允许用户通过RPC系统使用代理调用来欺骗NFS的RPC版本呢?如果软件包含一个可写的utmp文件文件,使用户能够覆盖任意系统文件?每一种情况下,是一个众所周知的安全漏洞。在每一种情况下,厂商没有为年提供修复 - 即使是现在,他们可以不是固定的。

    许多供应商说计算机安全不是优先考虑的问题,因为他们不相信花更多的钱在计算机安全上就能得到回报。计算机公司关心他们花在计算机安全上的钱是正确的。开发更安全的计算机是一项昂贵的提议,并不是每个客户都愿意为此付钱。Internet上的服务器可能不需要与公司防火墙后的服务器或断开连接的网络上的服务器相同的计算机安全级别。此外,增加计算机安全不会自动增加销售:需要安全的公司通常会雇佣负责维护系统安全的员工;不希望(或不了解)安全性的用户通常不愿意付出任何代价,并且经常在提供安全性时禁用安全性。

    在另一方面,一家电脑公司远远更好地维护自己的操作系统的安全性比是个人用户。原因之一是,一家电脑公司先后获得了系统的源代码。第二个原因是,大多数大型企业很容易投入两三个人来确保他们的操作系统的安全性,而大多数企业都捉襟见肘,甚至一个全职员工投身于计算机安全的工作。

    我们相信计算机用户开始将系统安全性和软件质量视为显著的特征,就像他们将可用性、性能和新功能视为特征一样。当一个人通过互联网或其他方式入侵电脑时,这种行为会对软件的制造者产生不良影响。我们希望计算机公司将很快使软件质量至少与新功能同等重要。

    网络提供商认为网络太好了

    网络提供商给企业和个人带来了特殊的挑战。网络供应商的本质是让计算机直接连接到您的计算机网络,从而将供应商(或者供应商公司的流氓雇员)置于一个理想的位置,以便对您的安装发起攻击。对于消费者,提供者通常拥有属于用户的机密账单信息。有些提供商甚至可以直接向用户的信用卡收费,或者从用户的银行账户中扣除资金。

    剑桥的计算机安全专家Dan Geer讲述了一个有趣的故事,关于一家投资经纪公司在其客户的计算机和该经纪公司的计算机之间建立了一系列直接IP连接。这些链接的目的是让客户可以直接在经纪公司的计算机系统上进行交易。但由于这两家客户公司也是竞争对手,经纪公司在这条链路上安装了各种复杂的防火墙系统。

    事实证明,吉尔说,虽然该公司已经从客户保护自身,它没有投入时间或金钱来保护客户彼此。一个公司的客户继续使用直接连接闯入另一个客户端系统运行。被发现入侵之前的专有信息的显著量被偷走了。

    在另一种情况下,出现在《纽约时报》1995年的头几个月,黑客凯文·米特尼克(Kevin Mitnick)被曝涉嫌侵入网通(Netcom Communications)的一个电脑系统。据称,米尼克窃取的东西之一是一份完整的网通客户数据库副本,其中包括3万多名网通客户的信用卡号码。当然,网通需要信用卡号码来向客户收取服务费。但是为什么要把它们放在一个可以通过互联网连接到的计算机系统上呢?为什么没有加密?

    想想所有那些在万维网上发芽了服务。他们声称使用各种超级加密协议来保护您的信用卡号,因为它是通过网络发送。但要记住,你可以通过互联网达到自己的机器进行交易。他们有什么样的保障在他们的网站上,以保护所有的卡号地方他们收集后?如果你看到一辆装甲车转让您的银行收据装在一个纸箱在公园的长椅上的“金库”,将运钞车的实力,因为你信任资金的安全?

    你能信任别人吗?

    最终,人侵入电脑。人们删除文件或更改系统的计划。人窃取信息。你应该确定你信任谁(和你谁不信任)。

    你的员工呢?

    这本书的大部分内容都是关于保护计算机系统免受外来者攻击的技术。这种关注不仅仅是我们的关注点:绝大多数企业对来自外部的攻击的恐惧超过了对内部攻击的恐惧。不幸的是,这种担心是错误的。美国联邦调查局和其他机构汇编的数据显示,电脑犯罪造成的主要经济损失中,大部分似乎与“内部”人员有关。

    比起内部人士,公司似乎更害怕来自外部的攻击,因为他们害怕未知。很少有管理者愿意相信他们的员工会背叛他们的老板,或者整个公司。很少有企业愿意相信他们的高管会把自己出卖给竞争对手。因此,许多组织花费了大量的资金来保护自己免受外部威胁,但在建立控制和审计以捕获和防止来自内部的问题方面却做得很少。

    没有保护你的组织对自己的员工是一种短视的政策。抵御圈内自动从外部购买的组织保护以及。毕竟,有什么外界的攻击者最希望的?他们希望自己的电脑,从中他们可以悄悄地调查你的系统和探测漏洞帐户的帐户。全球员工总数,执行官和其他内部已经有这种访问到您的计算机。而且,根据最近的计算机行业调查,从外人和流氓软件只占公司总体损失很小比例的攻击;攻击多达80%来自雇员和前雇员谁是不诚实或心怀不满。

    任何人在组织中应放置在绝对信任的位置。不幸的是,许多组织毫无保留地信任谁负责管理该公司的计算机系统的人。越来越多的外部审计正在采取仔细观察一下在信息系统支持组织的政策和程序 - 使某些正在执行的备份,员工们对自己的行为负责,大家制衡的框架内运作。

    你的系统管理员吗?

    一个不诚实的系统管理员的威胁应该是很明显的。毕竟,谁知道所有的好东西都放在哪里,所有的闹钟都设在哪里呢?然而,在你说你信任你的支持人员之前,问自己一个问题:他们可能是诚实的,但是他们有能力吗?

    我们知道最近的一个案例中,一个部门的服务器被至少两个不同的黑客集团彻底破坏。系统管理员不知道发生了什么,可能是因为他不擅长UNIX系统管理。入侵者最终是如何被发现的?在软件审计期间,系统被发现运行的软件与应该存在的不一致。本来应该有一个旧的,没有打补丁的版本的软件。调查显示,黑客显然已经安装的系统命令的新版本,以保持环境最新的,因为合法的管理员并没有做的工作。

    本质上,黑客在维护机器方面比雇佣的员工做得更好。黑客们随后利用这台机器对互联网上的其他计算机发起攻击。

    在这种情况下,你可能有更多的担心来自不称职的工作人员不是从某些局外人。毕竟,如果员工古山脉的备份,重新格式化磁盘驱动器,然后不小心删除了你已经离开了数据的唯一正确副本,该数据作为有效销毁,如果一个专业的破坏者曾入侵到系统中,并删除了它。

    你的供应商吗?

    我们听说过一个案例,一家大型计算机公司的现场服务技术人员正忙着为日后的盗窃案定位。他被带进大楼,在无人监督的情况下进入设备室,并随着时间的推移获得了报警代码和门锁组合。盗窃发生时,警方确信这是内部人作案,但没有人立即意识到这名技术人员是如何“内部人”的。

    在海外任职的美国军方和外交人员也曾遇到过电脑出现问题并把电脑带到当地服务中心的情况。当他们回到家时,技术人员发现了大量有趣的未经授权的附加电路。

    你怎么样从供应商处获得该软件?例如,AT&T声称肯·汤普森的编译器修改(在“信任信托”前面所述)在被运到客户的任何代码,从来没有。我们怎么知道肯定?什么是真正在你的机器上的代码?

    你的顾问吗?

    目前在计算机安全咨询领域有几个人的过去不太好。这些人领导了主要的黑客团伙,他们吹嘘自己侵入了公司和政府的电脑,他们可能因电脑犯罪而被起诉和起诉。他们中的一些人甚至蹲过监狱。现在他们做安全咨询,一些甚至利用他们的过去做广告(尽管大多数不会)。

    这些人有多值得信任?除了帮助设计防御系统的人之外,还有谁比他更适合侵入你的计算机系统呢?从责任的角度来考虑这个问题——你会雇佣一个已经承认的纵火犯来安装火灾报警系统,还是雇佣一个被定罪的恋童癖来经营你的日托中心?他肯定知道该保护孩子们不受什么伤害!你的保险公司会怎么说呢?你的股东吗?

    一些安全顾问不仅仅是罪犯以上;他们强迫系统的黑客。为什么你应该相信他们是更值得信赖,现在比前几年确实有更多的自我控制?

    银行家不信任

    银行和金融机构对不报告计算机犯罪臭名昭著的声誉。我们已经听取了该银行人员积极追查黑客攻击到一个特定的人,或开发的证据显示,有人侵入他们的系统的情况下,但他们并没有因为怕产生的宣传报道这些个案转交警方。

    在其他情况下,我们听说银行工作人员付出过的人,让他们停止他们的攻击和保持安静。一些业内专家认为,各大银行及贸易公司愿意容忍几百万美元的每周损失而不是遭受有关计算机失窃感知负面宣传。对他们来说,一个星期几百万不到,他们就在几个小时内投资的兴趣:这是低于噪声阈值。

    难道这些故事是真的吗?我们不知道,但我们并没有看到银行报告计算机犯罪的太多的情况下,我们在某种程度上不认为他们是免疫的攻击。如果有的话,他们更大的目标。然而,我们知道,银行趋向保守,他们担心电脑的问题,宣传是对企业不利。

    奇怪,如果是真的。想想看,有个小孩拿着枪在分支机构抢断出纳员1000 $,犯罪使晚间新闻,图片是在报纸上,并发出警报区域的事实。没有人失去对银行的信心。但是,如果一些黑客窃取500万$作为软件中的错误的结果和缺乏道德的...

    谁是你与你的一生的积蓄托付?

    如果你小心地不雇用可疑的人,你的服务提供商呢?你的维护组织吗?你的软件供应商吗?雇你晚上打扫办公室的公司?当你的秘书休假时,为你提供替代秘书的临时工服务?潜在的电脑犯罪分子,以及那些有着令人讨厌的过去的人,都能像其他人一样穿上街头的衣服,保住一份正常的工作。他们的额头上没有刺青红色的“H”。

    你能信任你的雇员或顾问的推荐人吗?想想这个故事吧,这个大银行的顾问找到了破解安全系统的方法,偷走了500万美元。后来他被银行保安人员抓住,但他们无法追踪到钱,也无法发现他是如何偷钱的。因此,他与银行达成了一项协议:他将退还除10%以外的全部款项,永远对这起盗窃案保持沉默,并揭露他利用的漏洞,以换取不起诉和有利的推荐信。银行急切地同意了,并将这笔损失作为广告和培训费用冲销。当然,有了这封赞赏信,他很快就在next银行找到了一份运行同样软件的工作。只换了几次工作,他就能在瑞士拥有一个巨额储蓄账户。

    响应人员?

    你的系统被黑了。你有一点信息,但不多。如果有人行动迅速,在删除远程机器上的日志之前,您可能能够识别罪魁祸首。你接到某人的电话声称是CERT-CC的,或者是FBI的。他们告诉你,他们从另一个网站的管理员那里得知,你的系统可能已经被黑了。他们会告诉你要寻找什么,然后问你自己找到了什么。他们承诺会跟进你的线索,并要求你保持沉默,以免让黑客知道有人在跟踪他们。你从来没有收到过他们的回复,后来的调查显示,相关机构没有人给你打过电话。

    这个案子听起来有点牵强吗?这是不应该的。商业站点、政府站点、甚至应急小组的管理者都接到过自称代表不同机构的人打来的电话。我们还听说,同样是这些人中的一些人,他们的电子邮件被拦截、复制,并在进入他们的机器的过程中阅读(通常情况下,黑客攻击的服务提供商或更改DNS记录就足够了)。结果呢?使用手机的社会工程师有一些额外的背景信息,使他们听起来更加正式。

    当你接到电话时,你信任谁?为什么?

    这一切意味着什么

    我们还没有提供的材料本章诱导你偏执,亲爱的读者。相反,我们要跨越,你需要仔细考虑谁,你相信什么点得到的。如果你有一个是给你的价值信息或设备,你需要思考的问题,可能是那里的风险和危险。有安全手段信任,但这种信任必须得到很好的安置。

    如果你是保护,是值得了大量的信息,攻击者很可能愿意投资显著的时间和资源,打破您的安全。你也可能会认为你没有那么值得了大量的信息;不过,你的目标呢。为什么?您的网站可能是一个方便的垫脚石另一个更有价值的网站。或者,也许您的一个用户被存储的巨大价值,你不知道的信息。或者,也许你根本就没有意识到自己拥有的信息是多少实际价值。例如,在1980年代后期,苏联情报人员愿意支付数十万美元的VMS操作系统源的副本 - 同样的来源,存放在公共计算机房解锁柜许多网站管理员。

    要想信任别人,你必须心存怀疑。问问题。做背景调查。测试代码。得到书面保证。不允许免责声明。对偶然的巧合抱有合理的怀疑(联邦调查局的电话或者联邦快递的补丁带出现在你发现有人试图利用补丁声称要修复的漏洞之后的几个小时)。您不需要做得太过,但请记住,建立信任的最佳方法是预期问题和攻击,然后进行测试。然后再测试一次。不要让例行公事说服你不会有问题发生。

    如果你吸收我们已经写在这本书中的一切,并应用它,你会在比赛之前的方式。但是,此信息是唯一一个全面的安全计划的第一部分。你需要不断地积累新的信息,研究你的风险,以及对未来的规划。自满是你能面临的最大危险之一。正如我们在书的开头说,UNIX可能是一个安全的系统,但只有当你了解它,并在监控环境中部署它。

    这点你可以相信我们。


    脚注

    1. 这个一个足够简单的赌注——发送邮件似乎有无穷无尽的错误和设计错误,导致安全问题。
    2. 通讯ACM的,第27卷第8号,1984年8月
    3. 同一家公司介绍,回答了错误的密码被提示东西来的,“你似乎影响用户已设置密码的东西太难记类型在连续三次的产物。你想设置以更简单的东西?”这种方法的分析就留给读者自己练习。
    4. 要么这个新的“改进的”程序真的很难配置吗?至少有一个供应商告诉我们是这样的。
    5. 其实,最新的软件应该一直在那里。然而,系统管理员没有做过任何更新,在两年多时间,所以我们预期的旧软件要到位。

    作者简介:

    Simson的加芬克尔是计算机咨询,科普作家,在WIRED杂志特约撰稿人,特约编辑为互联网地下和资深编辑在SunExpert杂志;他还附属于许多其他杂志和报纸。他是……的作者PGP:颇佳保密(O'Reilly&Associates出版),NeXTStep编程(施普林格出版社),和UNIX-Haters手册(IDG)。加芬克尔经常撰写有关科学技术及其社会影响的文章。

    基因斯帕福德是计算机科学普渡大学系的教授。他是电脑操作,审计和安全技术的创始人兼董事(COAST)实验室在普渡大学,并且也与在那里的软件工程技术研究中心(SERC)相关联。斯帕福德教授是在软件测试和调试,应用安全性和专业计算问题等领域积极研究员。金博宝正规网址他在努力使互联网蠕虫在控制之下的参与者;他公布了事件的分析,被认为是权威的解释。他的顾问编辑计算机犯罪:一个犯罪斗士手册(O'Reilly & Associates, 1995),他还合著了一本广受好评的关于计算机病毒的书。他监督了第一批cop和Tripwire安全审计软件包的开发,并经常受邀在世界各地的计算机伦理和计算机安全活动上发表演讲。他是众多编辑和顾问委员会的成员,并活跃于许多专业协会,包括ACM、Usenix、IEEE(作为高级成员)和IEEE计算机协会。他参与了IFIP信息处理系统安全和保护技术委员会的几个工作组。

    后记

    我看是的读者评论,我们自己的实验和分销渠道的结果。独特的盖子补充我们的独特方法技术主题,呼吸的个性和生活进入潜在的干科目。UNIX和随之而来的程序可以不守规矩的野兽。果壳手册帮你驯服它们。

    上的覆盖图像功能实用的UNIX和互联网安全是一种安全的。安全的概念已经伴随我们很长一段时间。保持贵重物品安全的方法一直沿用至今有记载的历史开始。第一个物理结构,我们认为保险箱是由埃及人,希腊人和罗马发展的。这些早期的保险箱简单地木箱。在中世纪和文艺复兴时期的欧洲,开始这些木箱保险箱被用金属圈加固,有的配备了锁。第一个全金属安全在法国开发于1820年。

    Edie Freedman设计了这本书的封面,使用了来自多佛图案档案馆的19世纪的雕刻。封面布局是用Quark XPress 3.3制作的,使用的是ITC Garamond字体。

    内部布局是由詹妮弗Niederst设计,由南希牧师的修改,以及由Mike Sierra在FrameMaker的5.0执行。文本和标题的字体是ITC Garamond字体灯和Garamond字体书。出现在书中的插图在Macromedia写意5.0克里斯Reilley创建。