科技时代新浪首页 > 科技时代 > 学园 > 正文

Linux代码淬火技术之工具篇


http://www.sina.com.cn 2006年08月30日 09:21 IT168.com

  作者:宇文

  【IT168 实用技巧】在上一篇文章中,我们详细介绍了关于代码淬火技术的概念以及Linux下常用的几种代码淬火方法。在本文中,我们将继续介绍用来提高Linux应用程序安全性和可靠性的开源工具和代码追踪技术。

    一、源代码检查工具

    在软件开发过程中,我们可以利用源码检查工具来找出常见的编程错误以及安全漏洞。这些工具用起来并不复杂,下面介绍splint和flawfinder这两款源码检查工具的使用方法。

    splint是一款静态源代码检查工具,能对源代码进行全面的分析。对于没有注释的源代码,可以使用-weak选项:

    splint -weak *.c -I./inc

    其中,./inc是头文件所在的子目录。此外,Splint还支持标准检查模式(选项-standard),若要进行中等强度检查则使用选项-checks,若使用选项-strict则进行最严格的检查。

    flawfinder也是一款用来寻找源代码错误的静态分析工具。通过该工具提供错误消息,开发人员可以更快的找到错误所在。请看下面的例子:

    $ flawfinder test.c
    test.c:11:  [2] (buffer) char:
      Statically-sized arrays can be overflowed. Perform bounds
      checking, use functions that limit length, or ensure that
      the size is larger than the maximum possible length.
    $

    本例中,flawfinder给出了一个提示,指出静态尺寸的数组可能被恶意利用的潜在危险。

    除了上面介绍的splint和flawfinder这两款工具外,还有RATS(一款安全

审计工具)以及ITS4(静态漏洞扫描工具)等工具可用。但需要注意的是,虽然这些工具能够分担一部分工作,但却无法完全替代人类。因为工具在发现漏洞的同时,也可能遗漏安全漏洞。

 [1] [2] [下一页]

本文导航:
·源代码检查工具
·代码跟踪技术

发表评论

爱问(iAsk.com) 相关网页共约18,600,000



评论】【论坛】【收藏此页】【 】【多种方式看新闻】【下载点点通】【打印】【关闭




科技时代意见反馈留言板 电话:010-82628888-5595   欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

Copyright © 1996 - 2006 SINA Inc. All Rights Reserved

新浪公司 版权所有