
| 出版日期:2003-11-24 总期号:1269 本年期号:88 |
|
自我防御请注意四点
沈生 如果一脚迈出从未来过的一幢大楼的电梯,那种感觉想必大家都很清楚:有点找不着北,不敢肯定人在何地或者要到何处。如果这时有人攻击你,正是最佳时机。在网络空间同样如此。如果你的事态意识(situational awareness)薄弱,攻击者最容易得手。特洛伊木马程序、病毒、欺骗、会话劫持、拒绝服务攻击、缓冲器溢出、社会工程等,没有哪家公司避免得了这些危险。而且这些危险的频发及狡猾程度都在与日俱增。 你需要一项全面的策略。先从意识开始着手,然后推广到贵公司内部的所有人员、流程和技术。当然,你采取的步骤应当体现风险级别。换句话说,没必要对内容是“咱们去吃饭吧”的电子邮件进行加密,但公司的重要资产应当由多层保护机制保护起来。 实施功能强大、多个层面的防御机制要从一些基本的架构决策开始着手。 鸡蛋不要放在一个篮子里 首先,不要什么都向一家厂商购买——哪怕对方是像Sun这样的大公司。虽然安全是Sun的主打招牌之一,但我们认识到:任何一种安全系统都有可能遭到入侵。我们也认为,多样性至关重要。Sun的首席技术官这样说:“假定全世界的粮食供应有90%来自单单一种玉米,我们将面临这种风险:单单某种枯萎病或者某种疾病就有可能切断绝大部分的粮食供应来源,这是无法接受的。” 使用开放系统 其次,坚持采用开放系统和开放标准,这点与大多数人所想的截然相反。开放系统其实更安全。这样想一想:即使我给你看了我这把锁的样子,介绍了它的工作原理,但你仍打不开——这是相当牢固的锁。 藏藏掖掖以求安全根本就不管用。譬如说,美国政府曾试图部署限制器芯片(Clipper chip)进行加密,但最后毫无成效,因为此举无异于表明:“我们绝不会把这种芯片的工作原理公诸于众。”但人们很快就搞清楚了原理。相比之下,RSA算法却经受住了大众的考验,仍没有被破译出来,除非借助代价非常高昂的蛮力措施。 许多公司面临的窘境在于,采用一家厂商提供的集成应用系统。好消息是,你仍可以拥有集成系统,只要确保它们基于开放标准。这样一来,如果出现了漏洞,你只要撤下有漏洞的应用系统,换上其它应用系统即可。所以避免采用那些厂商特定的扩展件,免得你被牢牢缚住手脚。 选择软件应包含三层 选择软件时,要确保你的应用系统包括以下三层:表示层——用户在屏幕上看到的那层;业务层——应用软件的功能逻辑部分;数据层——往往是机密、专用的信息,事关业务决策。 从性能和维护角度来看,采取分层方案有诸多充足的理由,它对安全而言尤为重要。分层意味着你可以在这几层之间安装防火墙,直接根据非法闯入对公司业务造成的破坏程度来控制访问级别。如果你把一切都放在表示层暴露程度最大的那一层,你就不得不从最高的安全级别来加以防御,这样一来,访问级别也就最低。但你总希望与需要知情的客户、供应商及合作伙伴共享信息。 80%的攻击来自内部 减少服务器的数量可以让你把注意力集中在防御上。但如果你所做的只是提供边界防御,那么仍面临重大漏洞,因为80%的攻击来自内部。 内部防火墙、基于规则的访问及身份管理是重要的防御机制。譬如说,人力资源代表不需要访问新产品设计。所以可以使用身份服务器,根据用户的角色、用户提供的验证级别以及当时所用设备(有线或无线)的安全性,来提供信息。 不过,对贵公司的安全来说危险最大的还是社会工程。简单的社会工程伎俩就是有人打电话给某员工,说:“我是技术支持部,今天系统遇到了问题。可以告诉我你的用户身份和口令吗?”令人惊讶的是,包括高层主管在内的人会说:“好的,给你。” 所以,别忘了花点时间加强安全意识,并让这成为强制性的工作。许多公司在大楼正门加了一道防盗门,却任由窗户敞开着。 |
|||||||||||||||||||||||||||||