首页
社区
课程
招聘
[旧帖] [求助]关于应用软件的代码安全分析技术 0.00雪花
发表于: 2009-11-3 16:24 1133

[旧帖] [求助]关于应用软件的代码安全分析技术 0.00雪花

2009-11-3 16:24
1133
目前收集到资料,对应用软件的代码安全分析,主要有以下几种技术,但对这几种技术我理解起来比较困难,因为我基本上不编程。各位大虾有没有研究?
特别是后三类。
---------------------------------------------------------------------
2.1词汇语法分析类工具
    词汇语法分析类工具是安全测试工具中最简单的工具,通过程序的词法和语法分析,对源代码进行静态分析,通过模式匹配找出特定的函数中可能导致安全问题的缺陷。
    词汇语法分析类工具使用简单、快速,易于实现,通常嵌入到程序编译器中,在软件开发的过程中发挥重要作用。但其局限性比较大,很难检测出比较复杂的安全问题,同时此类工具的误报率比较高。
2.2 约束分析类工具
    约束分析类工具通常利用解析树产生的约束(也可以利用代码中添加注释),对源代码进行分析,检查出可能导致安全问题的缺陷。
    相比于词汇语法类的分析工具,此类工具能够更好地分析函数的安全性,可以更全面地检查特定的一些安全漏洞,通过对解析树的分析,确定缺陷的位置。但因其对安全问题检查是根据约束完成的,所以检查缺陷范围比较有限。
2.3 扩展编译类工具
    扩展编译类工具是通过程序员根据对安全规则的理解,把规则和注释写入到源程序中传播。同时对编译器进行扩展,并对编译后的程序进行分析。
    扩展编译类的工具把特殊域合并到编译过程中,使应用的编写者不需要懂得内部的编译方式,减少了程序员对于编译的了解,可以进行系统级的规则检查;隐藏执行过程中不容易理解的规则;降低了误报率和测试的开销。但是这类工具不能检测多线程类的错误。
2.4  基于模型测试的工具
    基于模型测试类工具一般是对程序构造出有限状态模型,再检查其是否存在违反特定安全规则的问题。
    不同于前面工具的是,模型检查会为程序建模,检查的对象变成抽象化的模型。首先构建程序的有限状态模型,使用形式化方法表示需要检查的安全属性,设计分析算法检测模型中存在的缺陷。但是现存的模型检测工具一般针对有限状态模型进行分析,对于模型构建复杂的系统,测试增加了难度。模型的统一形式化表示也是这方面研究的重点。

[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课

收藏
免费 0
支持
分享
最新回复 (4)
雪    币: 370
活跃值: (52)
能力值: ( LV13,RANK:350 )
在线值:
发帖
回帖
粉丝
2
没有什么研究的 完全不懂
2009-11-3 17:20
0
雪    币: 100
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
好久没上线了,最近来顶下看雪论坛
2009-11-4 16:03
0
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
应用安全在这个论坛有没有人研究过呢?
2009-11-5 11:15
0
雪    币: 8
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
完全不懂,
先在此做个猜测,等大侠来指点:
这跟编译原理方面得知识又很大联系,
这些方法都是基于源代码得,即通过对代码进行分析检测,
1.比如缓冲区溢出检测,有此类工具,lz可以搜一下
2.根据lz的描述继续猜,像在程序中添加断言可能属于此种方法中简单得一种
3.感觉和上面有点类似啊,这个就不乱猜了
4.向ida中有一个工具是生成代码得流程图(没有用过),通过对模型进行分析,检测程序中可能存在的bug

发现自己学习技术有这么一大堆不确定,太不好了,哈哈
等内行来解答
2009-11-5 13:33
0
游客
登录 | 注册 方可回帖
返回
//