7.3.3 代码安全审核
1.源代码审核的概念和原理
为了保障安全编程规范的执行,以及在开发阶段由开发小组发现安全问题。需要采用源代码审核的技术手段来予以保障。
源代码审核是指无需运行被测代码,仅通过分析或检查源程序的语法、结构、过程、接口等来检查程序的正确性,报告源代码中的可能导致安全弱点的薄弱之处,找出代码隐藏的错误和缺陷,如参数不匹配、有歧义的嵌套语句、错误的递归、非法计算、可台旨出现的空指针引用等。统计证明,在整个软件开发生命周期中,30010至'70%的代码逻辑设计和编码缺陷是可以通过源代码审核来发现的。
源代码审核可以采用人工审核和工具审核两种方式进行,可以看出,源代码审核往往要求大量的时间消耗和相关知识的积累,采用人工审核的方式不仅费时费力,还极容易产生遗漏。因此,对于软件开发团队来说,使用源代码审核工具自动化执行代码检查和分析,禽邑够极大地提高软件可靠性并节省软件开发和测试成本。
源代码审核工具的优势在于:
◇帮助程序开发人员自动执行静态代码分析,快速定位代码隐藏错误和缺陷;
◇明显地减少了在代码逐行检查上花费的时间,提高软件可靠性并节省软件开发成本;
◇支持知识库的升级,也支持用户添加自定义的安全规则。
因此,在软件编码完成后,使用源代码审核工具,从客观角度对程序员编写的代码进行一次全面的安全检查,能极大地减少软件中的安全问题被带人随后的软件生命周期阶段的可能性。