静态分析安全工具的应用障碍重重

日期: 2010-03-23 作者:Robert Westervelt翻译:唐波 来源:TechTarget中国 英文

每个组织都有其自身的应用程序开发风格。根据行业的不同,企业会尽力保证应用程序构建的安全性,但对外界来说,速度是最重要的,安全则是其次。

  数字录像机软件制造商Tivo的安全主管Adam Ely说:“一旦你将安全意识传达给大家,接下来就需要展开切实的部署工作了。对一些软件公司或消费品公司来说,做好这方面的工作可能会更加困难。”

  随着攻击者对应用程序代码错误的攻击愈发频繁,安全专家正敦促企业重视软件的安全性改进工作。静态代码分析工具可扫描软件源代码并检测出潜在的安全漏洞。一旦发现错误,它们就可在开发生命周期的初期得到解决,从而减少了成品中的漏洞。Burton Group的分析师Ramon Krikken考察了这方面厂商的动态。Krikken称,许多厂商都有此类工具,其中包括Armorize Technologies、Klocwork、Coverity、Fortify Software和Veracode,一些大型的厂商也加入进来:IBM正通过它所收购的Ounce Labs向其客户提供代码分析功能。HP目前正与Fortify展开这方面的合作。

  Krikken称:“最近几年,这类工具在可用性方面有着巨大的进步。人们仍然在不断地对处理过程和工具进行评估。”

  和任何技术一样,静态分析工具也有它的缺陷。专家表示,虽然它们变得越来越易于使用,并且返回的错误也越来越少,但仍然需要加大工作力度以确保这类工具的引入不会导致软件构建过程的瘫痪。Krikken称,在应用程序中需要将这类工具调试得当以获取有用的漏洞分析数据,否则有可能会导致进程的瘫痪。Tivo的Ely表示,而且让开发人员使用安全测试工具可能会带来新的挑战,因为开发团队承担着如期完成项目的压力,他们大都不希望开发过程因此被中断。

  一些静态分析工具可有助于缓和这一压力。Ely说,例如,Fortify和Armorize Technologies公司所提供的工具能够在代码编译过程中开展代码测试工作,这样比较易于操作。Armorize’s technology还能做拼写检查,在代码编译期间检测出潜在错误并提出改进意见。

  使用代码分析工具的最大挑战之一在于,当它们返回成百上千的错误时,开发团队将无法招架。根据代码复杂程度和解决每个问题的处理过程的不同,项目的完工期限可能会被迫延长。

  Ely称:“需要有人手动评估每个问题,因为很多情况下,安全漏洞牵涉到多段代码,需要时间来解决,并找到所有的错误所在。”

  Web应用程序安全专家Caleb Sima称,虽然工具在不断被改进,错误处理依旧是源代码分析应用的主要障碍。Caleb Sima是SPI Dynamics公司(如今已加入HP Software)的合作创始人,曾担任该公司的首席技术官。Sima如今已是应用程序安全厂商Armorize的CEO。

  Sima说:“为让代码分析工具能够识别正确和可操作的环节,还需要付出大量的手工操作服务。”

  Sima称,安全性对软件编码者来说并不容易做到。通常,这些工具是由公司的安全团队引入到开发部门中的。之后,安全团队会强制要求对代码进行漏洞分析。这类工具的引入通常会导致两个部门间产生摩擦纷争。

  Sima称:“当你引入的工具会加大我需要完成的工作量时,我会很难接受。事实上,这类工具可能没有那么精准,或产生一些可操作结果拖延开发周期。这会加大开发人员需要完成的工作量。”

  Veracode的合作创始人兼首席技术官Chris Wysopal称,这类工具正在被简化,以帮助减少集成中的麻烦。早期的静态分析工具旨在帮助安全专家做代码审查工作。

  Wysopal称:“如今这类工具面向的是开发人员了,这是我们保护软件安全的唯一途径,因为没有那么多的安全专家来为我们做这些工作。”

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐