现在的位置: 首页 > 自动控制 > 工业·编程 > 正文

话说代码静态检查

2013-08-05 22:16 工业·编程 ⁄ 共 540字 ⁄ 字号 暂无评论

    最近项目到了收尾期,美国专家要求我们的代码必须进行静态检查,以避免代码存在缓冲区溢出漏洞和其他的弱点,从而成为溢出攻击的目标或者攻击操作系统的跳板。我们的代码是c++的,开始我用开源的cppcheck进行了代码扫描,确实能够帮助找出潜在的程序错误,但是这还不够,cppcheck毕竟是开源的软件,所以专家们建议我们使用fortify进行全面的静态检查,并且防备最终的可执行文件被逆向分析。

cppcheck很容易使用,而且有独立的界面,只需要给出源代码的路径就可以进行静态检查了。

fortify的windows版本是作为插件集成到visual studio中,这里有一点区别,cppcheck的静态检查是对源码的静态分析,而fortify需要visual studio的编译结果,所以fortify是对源码文件和编译生成的obj文件综合进行分析,所以更加贴近于可执行代码

fortify有非常丰富的规则库,可以找出更多潜在的程序错误。并且有比较详尽的说明提示代码的问题所在。

另外还有一款商业的代码静态检查工具pvsstudio也是作为插件集成到visual studio的开发环境中。

其他还有一些支持c++代码静态检查的软件或者功能不够强大或者安装配置使用不够方便,所以没有深入了。

给我留言

留言无头像?