首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 265 毫秒
1.
可执行可信软件安全性分析技术研究   总被引:1,自引:0,他引:1  
为了保证基于可信架构的可信软件的安全性,给出了可信软件安全性分析的总体架构及其工作原理,提出了一个静态分析技术与动态测试技术相结合的有效机制,实现了静态分析和动态跟踪的交互协作,提高了安全分析的效率.设计了一种可执行代码中间表示的方法,给出了建立程序存储空间抽象模型和程序抽象运行时刻环境的方法.详细地讨论了程序的控制流和数据流分析技术,并给出了求解算法.最后,概述了程序动态测试系统.  相似文献   

2.
为准确刻画程序的控制流和正确地提取程序控制结构,给出可执行代码控制流分析的整体架构和算法,阐述可执行代码反汇编结果的抽象表示、程序控制流构造等技术。反汇编结果抽象表示采用简化汇编语言中间表示(SAIR)以保证分析的简洁性和严密性。基于SAIR给出程序控制流构造函数,设计程序控制流构造算法并给出分析实例。  相似文献   

3.
文中基于符号执行理论,设计了一种面向C语言的静态分析方法。通过词法分析和语法分析构建了程序的抽象语法树,并在此过程中对源代码进行规范性检查,再根据函数调用关系与抽象语法树来确定程序分析层次,并通过约束求解器确定程序中每一条可执行路径,最后依照程序的可执行路径得到每个变量最终的符号执行结果。该方法支持基于C语言文法的程序规范性检查,便于代码质量度量。利用该方法得到的抽象语法树,可开展静态构架分析,同时利用变量值的符号表达式可辅助测试用例生成,有助于提高测试的效率和质量。  相似文献   

4.
在信息化时代,人们对软件的质量要求越来越高.程序分析是保障软件质量的重要手段之一,日益受到学术界和产业界的重视.介绍了若干基本程序分析技术(抽象解释、数据流分析、基于摘要的分析、符号执行、动态分析、基于机器学习的程序分析等),特别是最近10余年的研究进展.进而介绍了针对不同类型软件(移动应用、并发软件、分布式系统、二进制代码等)的分析方法.最后展望了程序分析未来的研究方向和所面临的挑战.  相似文献   

5.
程序可执行代码同源性度量技术研究   总被引:1,自引:0,他引:1       下载免费PDF全文
刘欣  段云所  陈钟 《软件学报》2004,15(Z1):143-148
当前软件版权保护机制侧重于从事前角度出发,防止软件知识产权受到侵害,无法满足司法实践对软件产品的同源性进行判定的要求,从静态与动态两个方面对程序可执行代码进行分析,给出一种程序可执行代码同源性度量方法.原型系统运行结果较好地反应了可执行代码间的似然性,初步解决了软件同源性度量的问题.  相似文献   

6.
通过在通用单调数据流框架基础上使用基于抽象解释的变量值范围传播技术,本文提出了一种自动获取循环最大迭代次数和不可行路径的方法。该方法有利于精确计算实时程序最差情况下的执行时间(WCET)。  相似文献   

7.
对于高性能并行计算机而言,如何由给出的计算、数据划分信息及精确数组数据流分析信息自动生成并行化代码是实现串行程序并行化的一个重要问题。根据Saman P.Amarasinghe和Lam的定理,实现了一种并行化识别工具中MPI(Message Passing Interface)并行化代码自动生成技术的算法,并对该算法的性能进行分析。  相似文献   

8.
JUTA: 一个Java自动化单元测试工具   总被引:2,自引:0,他引:2  
描述了一个Java自动化的单元测试工具JUTA.JUTA首先调用工具Soot解析单个Java方法的源码,并将源码解析成一个控制流图.在此基础上,采用符号执行的方法分析控制流图上的路径.工具能够自动地产生满足覆盖率标准的程序的测试用例.这种方法产生的所有测试用例都是可执行的,并且一般来说具有较小的测试用例数.如果用户能够合理地给出描述程序错误的断言,框架JUTA能够自动地检查源码中部分特定类型的错误.实验结果表明工具对Java单元代码的动态测试和静态测试均能在可接受的时间内给出有效的结果.  相似文献   

9.
张弛  黄志球  丁泽文 《计算机科学》2017,44(12):126-130, 155
在安全关键领域中,如何保证软件的安全性已经成为了一个广受关注的重要课题。静态程序分析是一类十分有效的程序自动化验证方法。基于抽象解释的静态分析技术在验证软件的非功能性安全属性上表现十分突出。可配置程序分析(Configurable Program Analysis,CPA)是一种通用静态分析方法形式化体系,旨在用一种形式化体系对静态分析的分析阶段进行建模。使用CPA对基于抽象解释的静态分析进行建模,给出如何使用CPA形式化体系描述基于抽象解释的静态分析,给出了从待分析程序到CPA形式化体系的转换规则;提供了一种在安全关键性领域中的软件正确性自动验证方法,为基于抽象解释的静态分析工具的实现提供了一种可行方案。  相似文献   

10.
本文给出了对自动化可移植代码生成技术的分类,并对有关这些技术的工作进行了综述。可移植代码生成的研究方法共分三类:解释代码生成,模式匹配代码生成以及表驱动代码生成。解释代码生成方法是先为虚拟机生成代码,然后再把该代码扩展成实际目标代码。模式匹配代码生成方法是把机器描述和代码生成算法分离。表驱动代码生成方法是利用形式化的机器描述和代码生成程序的生成程序,自动构造代码生成程序。本文对这些技术进行分析,并对各种自动代码生成算法进行评述。  相似文献   

11.
安全而又精确的值范围分析对编译器优化至关重要.系统地提出了一个基于抽象解释和通用单调数据流框架的值范围分析框架,包括精确的定叉、分析和完整的正确性证明.与一般的值范围分析方法不同,该框架不仅包括抽象解释,还包括与之对应的具体解释,以及相应的正确性证明.  相似文献   

12.
We derive a security flow control algorithm for message-based, modular systems and prove the algorithm correct. The development is noteworthy because it is completely rigorous: the flow control algorithm is derived as an abstract interpretation of the denotational semantics of the programming language for the modular system, and the correctness proof is a proof by logical relations of the congruence between the denotational semantics and its abstract interpretation. Effectiveness is also addressed: we give conditions under which an abstract interpretation can be computed as a traditional iterative data flow analysis, and we prove that our security flow control algorithm satisfies the conditions. We also show that symbolic expressions (that is, data flow values that contain unknowns) can be used in a convergent, iterative analysis. An important consequence of the latter result is that the security flow control algorithm can analyse individual modules in a system for well formedness and later can link the analyses to obtain an analysis of the entire system.  相似文献   

13.
This paper presents an approach for enhancing the design phase of AUTOSAR models when security annotations are required. The approach is based on information flow analysis and abstract interpretation. The analysis evaluates the correctness of the model by assessing if the flow of data is secure with respect to causal data dependencies within the model. To find these dependencies an exhaustive search through the model would be required. Abstract interpretation is used as a trade-off between the precision and complexity of the analysis. The approach also provides annotated models without oversizing the set of annotations.  相似文献   

14.
15.
单变量区间线性不等式抽象域   总被引:4,自引:0,他引:4  
程序变量的值范围信息对于编译器优化、程序分析与验证等应用至关重要.抽象解释理论提供了一种通用框架为程序变量计算近似的但是可靠的值范围.然而该框架下已有的数值抽象域在表达非凸性质方面存在一定的局限性,影响了值范围分析的精度.文中基于抽象解释理论,提出一个新的数值抽象域——单变量区间线性不等式抽象域.其主要思想是使用单变量区间线性不等式约束作为域元素的约束表示方法.该抽象域的表达能力强于经典的区间抽象域,并允许表达某类非凸、非连通性质.同时,其域操作存在高效的实现算法.该抽象域具有很强的可扩展性,能够应用在实际大规模的程序分析中.  相似文献   

16.
The program analyzer generator PAG described in this paper attempts to offer the best of both worlds, specification languages based on the clean theory of abstract interpretation and efficient implementation methods from the theory of data flow analysis. PAG has a high level functional input language to specify data flow analyses. It offers the generation of complex data structures and is therefore not limited to bit vector problems. PAG generated interprocedural analyzers can be easily integrated into existing compilers. PAG has successfully been used in the ESPRIT project COMPARE to generate several analyzers (including alias analysis and constant propagation) for industrial quality ANSI-C and Fortran90 compilers, and is now marketed by the spin-off company AbsInt.A simplified version of PAG can be interactively tested over the Web.  相似文献   

17.
一种基于抽象解释的WCET自动分析工具   总被引:1,自引:1,他引:0       下载免费PDF全文
利用基于抽象解释的变量值范围传播技术,提出了一种自动分析高级语言程序流信息的方法;并在白盒测试工具NPCA的基础上,利用该方法实现了WCET分析工具NPCA-WCET。  相似文献   

18.
Summary It is shown how to express data flow analysis in a denotational framework by means of abstract interpretation. A continuation style formulation naturally leads to the MOP (Meet Over all Paths) solution, whereas a direct style formulation leads to the MFP (Maximal Fixed Point) solution.  相似文献   

19.
介绍一种自动程序流信息分析方法,使用静态单赋值简化程序切片中的数据依赖关系,利用简单快速程序切片算法删除对循环控制无影响的语句和控制谓词,利用抽象解释自动精确获得程序流信息。实验结果表明,在不失精度的情况下,该方法的分析速度较普通方法快了近25%,且未假定任何程序格式,适用于任何程序格式的流分析过程。  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号