linux下代码分析工具Splint
来源:互联网 发布:eclipse教程 java 编辑:程序博客网 时间:2024/06/03 21:26
1. C代码静态分析工具
Its4
读取一个或多个 C/C++源程序,将每个源程序分割成函数标志流,然后检查生成的标志是否存在于漏洞数据库中,从而得到每个源程序的所有错误警告列表,并带有相关的描 述。其规则库vulns.i4d定义了各种函数的危险等级,描述等,通过规则匹配来报出风险,但它不能理解程序上下文意思,存在很大的误报。
Flawfinder
词法扫描和分析,内嵌了一些漏洞数据库,如缓冲区溢出、格式化串漏洞等,扫描快,按照代码中漏洞的风险等级对漏洞进行划分,可以快速找到存在的问题,误报较高。
Rats
扫描C、C++、Perl、PHP和Python开发的源程序中潜在的漏洞,扫描规则比较粗糙。
PC-lint
一个由Gimpel Software提供的支持C/C++的商用程序
Splint
(原来的 LCLint) 是一个GNU免费授权的 Lint程序,是一个动态检查C语言程序安全弱点和编写错误的程序。Splint会进行多种常规检查,包括未使用的变量,类型不一致,使用未定义变量,无法执行的代码,忽略返回值,执行路径未返回,无限循环等错误
2. splint安装
下载地址:
http://www.splint.org/downloads/splint-3.1.2.src.tgz
源码包安装:
# tar zxvf splint-3.1.2.src.tgz
# cd splint-3.1.2
# ./configure --prefix=$HOME/splint
#make
#make install
会出现错误。解决的办法:在cscanner.c中,直接增加函数:yywrap的定义如下:
int yywrap()
{
return 1;
}
3. 配置
splint提供了三种方式进行检查的控制,分别是flags标志、 .splintrc配置文件和格式化注释。
splint -showcol a.c //在检测a.c时,告警消息中列数不被打印
splint -varuse a.c //在检测a.c时,告警消息中未使用变量告警不被打印
- linux下代码分析工具Splint
- 代码静态分析工具splint
- linux下代码走查工具介绍---splint
- [BuildRelease]C++代码静态分析工具splint
- 代码静态分析工具 - splint的学习与使用
- linux下splint检测C语言代码质量
- 代码静态分析工具——splint的学习与使用
- 代码静态分析工具——splint的学习与使用
- 代码静态分析工具——splint的学习与使用
- 代码静态分析工具——splint的学习与使用(转)
- 代码静态分析工具——splint的学习与使用
- 代码静态分析工具——splint的学习与使用
- 软件测试代码静态分析(splint)
- linux下的吹毛求疵检查器splint
- linux 下的PC-lint----splint
- Ubuntu 下安装splint
- pc-lint静态代码分析工具(检查linux下C++代码的实现方式)
- Ubuntu中C代码静态检查工具Splint的安装配置和使用
- ubuntu 下安装 matplotlib 报错 numpy tornado pyparsing freetye png 依赖没有
- 关于NSURLConnection
- 开启新旅程--WebService编程学习开始
- caffe官网提取fc7层图像特征到lmdb数据库
- ASISCTFQuals2015的writeups
- linux下代码分析工具Splint
- Spring整合JMS(二)——三种消息监听器 - 好好学习,天天向上 - ITeye技术网站
- 最新JavaScript笔试题(含答案)
- 【unity资源管理】内存池
- 【swift】15-0514 基本数据类型
- ListView优化
- JAVA中request.getParameterMap()用法笔记
- Linux awk使用浅析
- Visual C++ 64 位迁移的常见问题