第三方测试报告:java不如.net安全?


  】

  这是一个非常有趣的问题, 也是一个很容易引发争论的问题。 关于java和来说, 任何一方都拥有着庞大的粉丝群。 但是在这个问题上, 除了粉丝的情感和商家的炒作以外, 是否有什么确切的证据来支持某一方的观点呢?

  在java推出基于字节码的跨平台技术之后, microsoft也为推出了字节码解释模型(commonlanguageruntime)。 关于两者的区别, 我团体的观点一直是他们都可以开收回平安级别很高的应用软件, 只是两者的开发形式、适用环境有一些区别罢了。 关于平安问题, 以前也经常有客户会问到两者之间的区别, 当时也没有很在意, 因为任何一方的平安级别都曾经足够满足客户的要求了。 也就是说即使有一些上下区别也没有大的关系。

  veracode是一家应用产品平安测试方案提供商, 他们的效劳是对二进制、字节码以及web应用停止扫描, 以发现平安问题。 他们一直持续保管和收集着他们每次的扫描结果, 并最近开始发布他们他们的扫描结果分析报告。 因为他们的任务范围里, 既有应用, 也有java应用, 因此我们可以通过他们的数据得到一些和java之间的平安差别证据。

  . NET需求阐明的是, 这些数据并不是出如今正式发布的报告当中(这些数据将能够出如今下一次修订当中。 编辑注:也许是在等候厂商停止公关)。 从这个报告的数据中可以看出:每mb代码中, 的漏洞密度为27. 2, java则为30. 0。 也就是单位数量代码中java的平安漏洞要高于。

  对大少数人来说, 这是一个非常接近的数字, 也在抽样误差允许范围之内。 可以以为和java的平安性在同一个级别范围内。 但是假如将平安问题数据再进一步划分为不同类型的话, 则会发现更有趣的事情, 会发如今不同的方面和java的平安成都差别还是比较大的。 上面是报告的一部分内容:

  这是一个对和java开发者非常有用的数据。 因为从报告中可以看到两个程序语言在哪些方面更容易出现平安问题, 比如二者的跨站脚本攻击防范才干都不高(注:在javaservlet3. 0规范中曾经做了改进), 所以设计应用的时分就要留意防范跨站脚本攻击问题, 尤其是更应该留意。 在veracode的阐明中对这个问题的解释是:之所以在防范跨站脚本攻击方面问题这么多, 是因为老版本的控制结构不会对输入停止编码, 因此假如要运用的话。 确认一定要运用最新的控制结构。

  最初需求留意的是, 平安问题并不是选择一个程序语言, 或者说是在和java之间, 或者是构建在其上的产品之间的选择理由。 一个完整的系统, 要综合思索应用范围环境、用户特点要求、将来维护发展等很多方面。
文章由口碑最好的缩阴产品整理,收集辛苦,希望能保留出处。

posted on 2011-05-13 06:15  jiyizhen3721  阅读(224)  评论(0编辑  收藏  举报