2011年安全事件层出不穷,几乎可以称为“黑客年”。以前黑客通常是利用程序漏洞来造成破坏,令网站陷入尴尬的境地,但如今他们却是为了窃取数据、IP地址,或者通过在网站中植入木马将恶意软件安装到访客的电脑里,更有甚者转移账户、违反行业规定等等,因此应用程序的安全显得越来越重要。
安全漏洞 TOP5
据统计,10个程序中有8个以上在第一次测试时都不能通过OWASP(Open Web Application Security Project,开放式Web应用程序安全项目)的检查,而且有一半的开发者在基础程序安全评估中都只能获得C级甚至更低的评级。
下图展示了排名前五位的安全漏洞。其中橙色表示受影响的Web应用的比例,XSS最高;蓝色表示被黑客利用的比例,SQL注入的比例最高。
编程语言中的安全漏洞
下图展示了一些流行的编程语言中比例最高的 3 种安全漏洞。其中 XSS 的威胁依然很高,而信息泄露和加密问题也不容忽视。
不同开发模式的安全漏洞
下图展示了各种开发模式(内部开发、商业项目、开源项目)所带来的安全漏洞,其中XSS高居榜首。
首次提交OWASP测试的合格率
下图展示了内部项目、商业项目、开源项目、外包项目、综合开发项目在首次提交OWASP测试的合格率,其中内部项目最高,外包项目最低。
Android应用也不安全
Android应用的安全问题主要有两类:一类是加密问题,另一类是信息泄露问题。加密问题中61%是缺乏熵编码的问题,这通常是由于在Java程序中使用统计RNG而不用加密RNG所致。而这些问题用一行代码就能修复。
修复安全问题所需时间
其中外包项目中的安全问题通常能在一周之内修复,其次是开源项目。而其他项目的修复周期相对来说比较长一些。
如何增强程序安全性?
安全漏洞 TOP5
据统计,10个程序中有8个以上在第一次测试时都不能通过OWASP(Open Web Application Security Project,开放式Web应用程序安全项目)的检查,而且有一半的开发者在基础程序安全评估中都只能获得C级甚至更低的评级。
下图展示了排名前五位的安全漏洞。其中橙色表示受影响的Web应用的比例,XSS最高;蓝色表示被黑客利用的比例,SQL注入的比例最高。
编程语言中的安全漏洞
下图展示了一些流行的编程语言中比例最高的 3 种安全漏洞。其中 XSS 的威胁依然很高,而信息泄露和加密问题也不容忽视。
不同开发模式的安全漏洞
下图展示了各种开发模式(内部开发、商业项目、开源项目)所带来的安全漏洞,其中XSS高居榜首。
首次提交OWASP测试的合格率
下图展示了内部项目、商业项目、开源项目、外包项目、综合开发项目在首次提交OWASP测试的合格率,其中内部项目最高,外包项目最低。
Android应用也不安全
Android应用的安全问题主要有两类:一类是加密问题,另一类是信息泄露问题。加密问题中61%是缺乏熵编码的问题,这通常是由于在Java程序中使用统计RNG而不用加密RNG所致。而这些问题用一行代码就能修复。
修复安全问题所需时间
其中外包项目中的安全问题通常能在一周之内修复,其次是开源项目。而其他项目的修复周期相对来说比较长一些。
如何增强程序安全性?
- 及时更新软件。自己编写安全的软件或要求供应商及时修复安全问题。
- 不断学习。自学巩固程序安全基础知识,参加培训班。
- 要求供应商为其软件提供安全保证。要求供应商查看程序代码,在合同里写入安全保证条款。