- UID
- 1
- 主题
管理员
- CN币
- 币
- 威望
- 值
- 报料奖
- 元
- 贡献
- 值
- 回复
- 帖
- 日志
- 好友
- 帖子
- 主题
- 听众
- 收听
- 性别
- 保密
|
<div id="googlead"> <script language="JavaScript" src="/ad/gg-250.js"></script></div><p><span style="font-size: small"><span style="font-size: small"> </span>每次我们从IT的困境中逃脱出来都很追悔莫及。2010年已经到来,让我们认真学习一下,避免这些事情重复发生。 </span></p>
<p><span style="font-size: small"> 依赖以签名为基础的防御</span></p>
<p><span style="font-size: small"> 早在上个世纪80年代,当计算机病毒首次出现在我们的系统中时,厂商为我们提供一些检测工具,并将病毒彻底删除。但是一些很有预见性的人发现,以签名为基础的安全产品对于一些更大的问题来说只是短期的有效解决办法。</span></p>
<p><span style="font-size: small"> 到了上个世纪90年代,入侵检测系统IDS成为流行产品,同样的问题又出现了。实际上,现有的大部分的IDS和IPS产品仍旧以静态签名数据库为检测攻击的基准。</span></p>
<p><span style="font-size: small"> 当然,产品肯定不可能至今没有任何改进,签名引擎已经增加了很多功能,如正则表达式解析,帮助更加准确地检测和防御。但是根源问题始终存在。</span></p>
<p><span style="font-size: small"> 直到我们开始诉诸于积极的验证方法(一种只允许安全的东西通过并阻止一切不安全东西进入的机制)的时候,我们被遇到的新兴攻击所震惊。为了积极验证问题的存在,我们需要了解下一步该怎么做,这就意味着,解决方案必须与应用软件很相近。什么事情都是说起来比做起来容易,但是我们必须要在行动上表现得更好。</span></p>
<p><span style="font-size: small"> 渗透测试不万能</span></p>
<p><span style="font-size: small"> 渗透测试是我们安全问题中的重要组成部分,但是单纯依靠渗透测试来决定系统或程序的安全与否就大错特错了。</span></p>
<p><span style="font-size: small"> 原因在于渗透测试工具和技巧往往只是以网络和应用扫描为基础。它本质上是从外到内的方法,对软件体系结构、设计和源代码的根部问题的深入检查力不从心。</span></p>
<p><span style="font-size: small"> 任何可靠的安全测试程序都一定包括适当的设计和源代码审查,除了那些严格的动态测试。但是渗透测试却没有。</span></p>
<p><span style="font-size: small"> 软件认识的堕落</span></p>
<p><span style="font-size: small"> 当我上个世纪80年代进入这个行业的时候,遇到了一个很不可思议的问题,明显让系统管理员去做编程。几乎这个领域的每个人都有一些扎实的计算机科学的背景。</span></p>
<p><span style="font-size: small"> 回到今天,你会发现信息安全已经成为主要的难题,能读懂软件源代码的人却少之又少。这是个很大的问题。因为我们很难知道最新出现的攻击事件和攻击工具是怎么一回事。我们需要对工作中的一些基础技术有很深入的认识。这被认为是安全技术人员必须要达到的安全技术水平。</span></p>
<p><span style="font-size: small"> 权宜之计不可喧宾夺主</span></p>
<p><span style="font-size: small"> 每当我了解到一些新的攻击工具或技巧的时候,出于本能的反映我都希望我们的企业的系统能够适当地做好防御。如果他们没有做好,我们就会寻找一些补救的方法。这些都是很自然和可以想到的做法。</span></p>
<p><span style="font-size: small"> 但是寻找最快修复办法总是让我们步入“螺旋安全”的怪圈。我们从厂商那买来产品,放在企业系统的前端,然后希望奇迹很发生。但是往往相反,我们总是感到失望。</span></p>
<p><span style="font-size: small"> 解决问题的权宜之计本身没有问题,但是我们要意识到它们只是权宜之计。如果我们不始终着眼于系统根源的问题,注定会失败。</span></p>
<p><span style="font-size: small"> 过于乐观的“代码”</span></p>
<p><span style="font-size: small"> 这观点有点过于左了,但是这是多次遇到的问题。很多时候,我们所依赖的软件都被编写得过于乐观了。编写代码的人肯定不会想到会在这里出现问题。</span></p>
<p><span style="font-size: small"> 我所要明确的是,人们在编写软件的时候都想当然地认为不会有问题。例如,将文件存到磁盘上。我们想当然地认为有足够的空间存入这个文件,以及存盘的过程是没有病毒的。事实上,计算机环境经常会丢出让我们意想不到的问题来。很多这种失败都会出现严重的安全影响:客户记录遭到窃取,认证证书欺骗等等。</span></p>
<p><span style="font-size: small"> 在做系统审查的时候,我总是会想到出现问题的一刹那。例如,一个成年人人带着孩子走在繁忙街道,他的心态是怎样的?他要保证孩子的安全。成年人就是我们所谓的软件开发者,他们应该预料到可能存在的问题并保证使用者的安全。</span></p> |
|