由于近来对使用功能强大的联网计算机来帮助商业运转和记录个人信息的依赖性日益增强,许多围绕着网络和计算机安全的行业也渐渐形成。企业机构开始聘请安全专家来确切地评审系统以及定制适合其组织的解决方案。由于许多机构属于动态性质,工作人员要么本地要么远程地使用公司的信息技术资源,因此机构们对安全计算环境的需求已愈来愈强烈。
不幸的是,多数机构(以及个体用户)把安全问题当成“马后炮”。安全问题常常会由于对增强功能、提高生成率以及对预算的考虑而被忽略。正确的安全措施经常是根据事后调查(postmortem) — 非法的入侵事件出现之后 — 来实现的。安全专家们都一致认为,在把网站连接到不信任的网络(如国际互联网)之前预先采取正确的措施是阻挠入侵企图的有效方法。
计算机安全这个通用术语所涉及的计算和信息处理领域比较广泛。依赖于计算机系统和网络来处理日常商业事务和存取重要信息的行业把它们的数据当作公司总资产的重要组成部分。一些术语和衡量标准也渐渐开始出现在我们的日常商业用语中。例如:整体拥有成本(total cost of ownership,TCO)、服务质量(quality of service,QoS)。在这些衡量标准中,行业把数据完好性和高可用性方面也计算入他们的计划和进程管理费用中。在某些行业(如电子商务)中,数据的可用性和可信性可能就会决定成败。
许多读者可能还会记得马修-布罗德里克(Matthew Broderick)主演的电影《战争游戏》。他在其中扮演了一个闯入美国国防部超级电脑而无意导致核战争危机的高中学生。在电影中,布罗德里克使用他的调制解调器拨入美国国防部的电脑(叫做 WOPR),和一个控制所有核导弹发射井的人工智能软件玩游戏。这个电影是在1983年前苏联和美国的冷战期间被发行的,它被认为是当年戏剧片的成功之作。它的流行激发了许多个人和团体开始实施那个年轻的主人公所用的闯入机密系统的方法,包括著名的“战争拨号(war dialing)” — 按照区号和电话前缀组合来搜索模拟调制解调器连接的电话号码。
十多年后,通过美国联邦调查局(FBI)和全美国的计算机专家的鼎力合作,和历时四年的多司法区的追踪,声名狼藉的计算机怪客凯文·米蒂尼克(Kevin Mitnick)终于被逮捕。他被指控了25项计算机和存取设备的诈骗盗窃罪。这些诈骗盗窃活动导致诺基亚(Nokia)、NEC、Sun Microsystems、Novell、富士(Fujitsu)、和摩托罗拉(Motorola)损失了近八千万美元的知识产权和源码。FBI 认为该案件是当时美国历史上最大的计算机犯罪案件。凯文·米蒂尼克被定罪并被判处了68个月的徒刑。他共服刑60个月,于2000年1月21日被假释。假释条件禁止他在2003年之前使用计算机或从事任何和计算机相关的顾问工作。调查员说,米蒂尼克是社交工程(social engineering) — 使用人际关系来获得口令,使用伪造身份来进入系统 — 的专家。
由于对使用公共网络来传送私人、财经、以及其它保密信息的依赖性越来越大,信息安全的性质也随之演变。米蒂尼克和范德米尔·列文(请参阅第 1.1.2 节)这类案件的层出不穷,使得各行各业都不得不开始重新考虑他们处理信息传输的策略。国际互联网的流行性是促使对数据安全方面付出更多努力的主要原因之一。
越来越多的人使用他们的个人计算机来获取国际互联网所提供的各项资源。从研究、信息检索,到电子邮件和电子商务,互联网已被公认为是二十世纪最重要的开发成果之一。
然而,互联网和它早期的协议是作为基于信任(trust-based) 的系统开发的。这就是说,互联网协议自身的设计是不安全的。TCP/IP 通信栈中没有内建任何被核准的安全标准,因此带有潜在不良企图的网络用户和进程几乎能够畅行无阻。虽然当前的开发已大大提高了互联网通信的安全性,但是偶尔仍有令人瞠目之事发生,时刻提醒我们世界上没有任何东西和事情是完全安全的。
在计算机安全问题的发生和发展过程中出现了几件对其产生了深远影响的重要事件。以下列出了一些使人们开始关注计算机和信息安全的重要事件。
麻省理工学院的学生组织了技术模型铁路俱乐部(Tech Model Railroad Club,TMRC),开始使用学院里的 PDP-1 大型机进行编程探索。最终,这个小组使用了“黑客”这个术语,其意义和今天相仿。
美国国防部创建了高级研究计划局网(Advanced Research Projects Agency Network,ARPANet)。它在研究界和学术界越来越流行,逐渐成为电子数据信息的交换渠道。这为创建今天所称的“互联网”奠定了基础。
Ken Thompson 开发了 UNIX 操作系统。由于这个系统提供了使用方便的开发工具和编译器,以及支持性的用户社区,它被广泛认为是最“黑客友好”的操作系统。与此同时,Dennis Ritchie 开发了 C 编程语言,该语言可以说是计算机历史上最流行的黑客语言。
Bolt, Beranek, and Newman 是美国政府和行业内的计算机研究和开发承包商。它们开发了 Telnet 协议 - ARPANet 的公共扩展。该协议为公开使用从前仅限于政府承包商和学术研究者的数据网络打开了方便之门。同时,据几位安全研究员表明,Telnet 也可以算是公共网络中最不安全的协议。
Steve Jobs 和 Steve Wozniak 创办了苹果计算机(Apple Computer),并开始推销个人计算机(PC)。PC 是好几个蓄意不良的用户学习使用普通电脑通信硬件(如模拟调制解调器和战争拨号器)来远程入侵系统这门艺术的跳板。
Jim Ellis 和 Tom Truscott 创建了 USENET - 用于在分散形用户间进行电子通信的公告板风格的系统。USENET 迅速成为交换计算机、网络、以及入侵方面的观点见解的最流行论坛之一。
IBM 开发并销售基于 Intel 8086 微型处理器的 PC。它是一种相对来说价格较低廉的体系,它把计算机从办公室延伸到了家庭。它使 PC 渐渐成为一种功能比较强大、使用方便、而又普通常见、极易获取的工具,从而促进了这类硬件在蓄意不良用户的家庭和办公场所日益增多。
由 Vint Cerf 开发的传输控制协议被分裂成两个独立的部分。互联网协议(IP)就是从这次分裂中诞生的。被组合在一起的 TCP/IP 协议成为今天所有互联网通信的标准。
基于在电话欺诈(phreaking) - 探索和攻击电话系统 - 方面的发展情况,2600: The Hacker Quarterly 杂志被创办。该杂志开始面向比较广泛的读者听众,讨论入侵计算机和计算机网络之类的课题。
经过九天的自由入侵,414帮会(根据他们居住和攻击基地而命名)非法进入了许多系统,甚至包括像 Los Alamos National Laboratory - 一个核武器研究设施 - 这样的绝密机构,他们终于被有关权力机关清查。
Legion of Doom 和 Chaos Computer Club 是两个开始在计算机和电子数据网络中探索弱点的先锋怪客组织。
Ian Murphy(又称 Captain Zap)非法进入了军事计算机,从公司商业订单数据库中窃取了信息,使用了被严格限制的政府电话交换台来打电话。由于他的这些入侵活动,美国国会在1986年投票通过了计算机欺诈和滥用法规(Computer Fraud and Abuse Act)。
根据这个法规,法庭才能够因为毕业生 Robert Morris 把 Morris Worm 传播给6000多台连接到互联网上的计算机而给他定罪。按照这个法规裁决的下一例最著名的案件是 Herbert Zinn。他这名高中退学生非法闯入并滥用了属于 AT&T 和美国国防部的系统。
很多人担忧 Morris Worm 事件可能会重演,因此计算机紧急响应组(CERT)被创建来在网络安全问题上给计算机用户报警。
Clifford Stoll 编纂了 The Cuckoo's Egg。它是 Stoll 调查入侵他的系统的怪客的亲身经历。
ARPANet 被关闭。到该网络的交通都被转到互联网上。
Linus Torvalds 开发了 Linux 内核以用于 GNU 操作系统;对 Linux 的广泛开发和采用在很大程度上是用户和开发者通过互联网通信的结果。因为它源于 UNIX,Linux 在黑客和管理员中最为流行。他们发现 Linux 对于在运行专有(闭源)操作系统的早期服务器中建构另类安全措施很有帮助。
图形化万维网浏览器被创建,导致对公共互联网访问的需求迅速增加。
范德米尔·列文及其同伙闯入花期银行的中央数据库,非法地将一千万美元巨额转入几个帐户。列文被 Interpol 逮捕,所有遗失款项都被追回。
凯文·米蒂尼克可能是所有怪客中最为先锋的一个。他闯入了几家大公司的系统,从著名人士的私人信息,到两万余张信用卡和专有公司的源码,他所窃取的信息包罗万象。他被逮捕并以电子贪污定罪,被判处了5年徒刑。
凯文·鲍尔森和一个不知名的同伙操纵了广播电台的电话系统来骗赢汽车和奖金。他以计算机和电子贪污定罪,也被判处了5年徒刑。
非法闯入和电话诈骗的故事已渐渐成为传奇。一些未来的怪客在一年一度的 DefCon 会议中集会庆祝非法入侵并彼此交换见解。
一名19岁的以色列学生被逮捕并以在波斯湾冲突期间协调对美国政府系统的非法闯入而定罪。军方人员将其称为是美国历史上对政府系统“最有组织和系统化的攻击”。
为了对在政府系统中日益增多的安全破坏情况采取相应措施,美国司法部长 Janet Reno 组建了国家机构设施保护中心。
英国通讯卫星被未知违法者劫获并绑票。英国政府最终夺回了卫星控制权。
在2000年2月,互联网上几个流量最繁忙的站点遭到了一次分布型拒绝服务(DDoS)攻击。这次攻击使 yahoo.com、cnn.com、amazon.com、fbi.gov 和许多其它站点完全无法被正常用户使用,因为它使用大字节的 ICMP 分组传输(又称试通洪流、ping flood)把这些站点的路由器困住了几个小时。一群未知攻击者使用特别创建的、可广泛获取的程序来扫描防守薄弱的网络服务器;在这些服务器上安装叫做特洛伊木马(trojan)的客户程序;然后安排了一个攻击时间,让每个受感染的服务器满负荷地向受害站点发出分组,从而使受害站点变得不可用。许多人把这次攻击怪罪于所用路由器和协议结构中的基础缺陷,因为所用路由器和协议接受所有进入的数据,而不管这些分组是从哪里或为哪些目的而发送来的。
这就把我们带到了新千年中 - 全世界约有四亿人使用或使用过互联网。同时:
在任意一天内,报告到卡内基-梅隆大学的 CERT 协调中心的主要安全破坏事件约有225起。[参考资料:http://www.cert.org]
在2002年,报告到 CERT 的事件从2001年的52,658起剧增到82,094起。在本书编纂之时,仅在2003第一季度内报告的事件就有42,586起。[参考资料:http://www.cert.org]
在过去两年中出现的三个最危险的互联网病毒对世界经济的影响估计约为132亿美元。[参考资料:http://www.newsfactor.com/perl/story/16407.html]
计算机安全已经渐渐成为信息工程预算中的一项可以测量而且无可非议的开支。那些要求数据完好性和高可用性的机构借助系统管理员、开发者、和工程师们的技术力量来保证它们的系统、服务和信息的每时每刻的可靠性。
不幸的是,系统安全和网络安全是一项比较困难的议题,它需要你对某个组织如何对待、使用、处理、以及传输信息有精心深入的了解。理解某个组织(以及组成它的所有人员)的运转方式对于实施正确的安全计划来说至关重要。
各行各业中的企业都依赖于由制定标准的机构,如美国医疗协会(AMA)或电气和电子工程师学会(IEEE),所设置的法则和规定。信息安全也不例外。许多安全顾问和厂商都认同一个叫做 CIA,或保密性、完好性、和可用性(Confidentiality, Integrity, and Availability)的标准安全模型。这个三层模型是用来评测保密信息所面临的危险以及建立安全策略的被普遍接受的安全标准的一个组成部分。以下详细描述了 CIA 模型:
保密性 — 保密信息必须只能够被一组预先限定的人员存取。对这类信息的未经授权的传输和使用应该被严格限制。例如,信息保密性会确保顾客的个人和财务信息不被未经授权的人员获取以用于窃取身份或信用卡贪污之类的不良企图。
完好性 — 信息不应该被能够导致它不完整或不正确的方式改变。未经授权的用户不应该具备修改或破坏保密信息的能力。
可用性 — 信息应该能够被授权的用户在任何需要的时候都可以被存取。可用性是信息能够在规定的时间范围内、按照规定的频率而能够被获取的保证。这通常是按照百分比来衡量的,并且被网络服务器提供者和他们的企业客户使用的服务级别协议(SLA)正式达成协议。