首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 234 毫秒
1.
混合式漏洞挖掘利用模糊测试和符号执行相互协作以达到优势互补的目标,测试用例的同步是相互协作的关键。然而,现有混合式漏洞挖掘技术方案中,测试用例同步是主要以交换和整合的方式实现,较为单一,忽略了程序状态探索时的运行时信息,对符号执行的执行过程没有充分利用。针对上述问题,本文提出了一种基于程序关键点的测试用例同步方法,旨在分析挖掘符号执行的执行过程,定位与识别代码覆盖率导向的程序关键点,进而指导模糊测试的测试用例调度与变异过程, 实现更细粒度的测试用例同步。首先,该方法在符号执行过程中识别模糊测试模块难以触及的分支对应的变量集合,并将其提取为程序的关键点。其次,为了充分利用符号求解的结果,该方法将单次求解得到的关键点信息进行进一步组合匹配,以帮助符号执行模块额外生成更多能够被模糊测试模块导入的测试用例。最后,在模糊测试模块中,该方法在种子挑选步骤中优先选择包含关键点信息的测试用例去引导测试过程探索程序的特定区域,并在测试用例变异中着重对关键点位置进行变异以引导其产生能覆盖新代码分支的测试用例。基于混合式漏洞挖掘工具QSYM,本文实现了一个原型系统Sol-QSYM,并选取了12个真实程序进行了实验评估。实验结果表明Sol-QSYM可以提升12.73%的测试用例成功导入率,相较于QSYM提升9.07%的代码覆盖率,并能够发现更多的程序crash。这些结果表明改进后的测试用例同步方法可以很好地提高混合式漏洞挖掘对符号执行中程序状态探索结果的利用率。  相似文献   

2.
冗余代码缺陷检测方法   总被引:1,自引:1,他引:0  
为解决冗余代码缺陷检测复杂度较高且检测精度较低的问题,设计并实现了基于控制结构的冗余代码检测模型.通过对TOKEN序列建立复合语句结构信息表,精简了程序的控制依赖关系,并在此基础上对幂等操作、死代码以及冗余赋值3种冗余代码进行检测,有效降低了缺陷检测复杂度.通过分析Linux开源代码表明,本模型可以快速的检测大规模程序,并且具有较低的误报率和漏报率.因此本模型可以帮助程序员发现进而修正软件缺陷,维护软件可靠性.  相似文献   

3.
代码多样化消除规则的研究   总被引:3,自引:0,他引:3  
程序目标实现形式的多样化给代码的理解工作带来了许多困难,针对这种情况,提出了一系列代码多样化实现形式消除的规则.在系统依赖图(SDG)的基础上,应用这些规则实现了代码多样化的消除处理,并将这些规则应用到程序设计语言编程题自动评分系统中.  相似文献   

4.
数控G代码解释器的设计与实现   总被引:11,自引:0,他引:11  
对数控G代码解释器的功能、结构进行了详细分析 .针对微机数控的特点 ,提出表示程序和程序块的数据结构 .然后 ,采用递归的方法实现了程序的解释过程 ,最后通过一个实例验证了程序的正确性 .  相似文献   

5.
采用专用DSP控制器TITMS320 F2812对无刷直流电机智能控制系统进行了全数字化设计.给出了系统实现的硬件电路设计方案,并利用MATLAB/Simulink/Embedded Target for TIC2000DSP嵌入式目标模块建立了直流电机控制器的仿真模型.一旦需要的功能被设计而且模拟成功,就可以直接为DSP(数字信号处理器)产生代码.直流电机被数字信号处理器产生的信号驱动,从而完成特定直流电机控制器的设计.实验表明,通过采用嵌入式目标模块生成针对特定应用的程序能够实现程序设计的快速高效化.  相似文献   

6.
实现Agent强迁移的关键问题是捕捉和恢复Agent状态。通过分析JVM的概念及体系结构,提出了一种用来获取类型信息的类型推理机制。根据类型推理机制的实现思想和工作原理,以及运用它捕捉Java程序状态,并通过代码迁移、数据状态迁移和执行状态迁移的关键技术,设计并开发了支持A-gent强迁移的新Java包java.lang.agentpack。完成后的类推方法具有较好的移植性和完整性,能较好解决Agent强迁移问题,不必修改JVM,也不增加额外开销,具有很好的应用价值。  相似文献   

7.
主要研究抛物线型分布参数系统的解耦控制问题.大型强制循环多区段立式淬火炉为抛物线型分布参数系统.本文根据淬火炉多个区段之间具有强耦合的特性,采用有限差分法离散化抛物线型偏微分方程,然后通过状态反馈解耦方法对系统进行解耦控制,提出了自学习解耦控制算法,通过分布参数系统状态空间反馈解耦方法将系统转化为多个子系统,以实现锻件温度轴向分布的均匀性.实际运行结果表明,分布参数系统自学习解耦控制算法的效果很好.  相似文献   

8.
不同维状态的多传感器MAP航迹融合方法   总被引:1,自引:0,他引:1  
在分布式多传感器数据融合结构中,各传感器通过处理各自的观测数据把形成的航迹在融合中心进行处理.在实际中各传感器的观测信息维数不一致,也即各传感器可能采用不同的模型观测同一目标;为解决上述问题,通过建立状态映射,提出了输出目标估计状态之间维数不同情况下的带反馈极大验后(MAP)估计融合方法,并通过计算机仿真验证了该算法的有效性.  相似文献   

9.
反汇编是程序分析与理解的基础,也是软件逆向工程的起点和关键。目前关于静态反汇编的研究解决了许多诸如代码和数据的区分、间接跳转指令的目标地址的计算、跳转表恢复等问题,但这些研究都局限于单一编码模式下的二进制程序,并没有涉及混合编码模式下的反汇编问题,文章以混合编码模式的二进制代码为研究对象,提出一种混合编码模式下的静态控制流反汇编复算法并对算法进行了性能分析。  相似文献   

10.
为解决分布反馈光纤激光传感阵列功率一致性的问题,建立了分布反馈光纤激光波分复用阵列输出功率预测模型,采用差值寻优法对激光器进行排序,并通过在阵列尾部增加980nm反射镜进一步提高了阵列的功率均衡水平,实现了阵列结构优化。实验结果表明,优化后的阵列功率波动水平明显改善,有效地解决了阵列末端信号解调效果差的问题,扩大了阵列实际复用容量,提高了组阵效率。上述方法对大规模分布反馈光纤激光器传感器阵列的结构设计具有借鉴价值。  相似文献   

11.
AFL-CGI-wrapper (ACW)是桌面CGI程序的漏洞自动挖掘方法,其利用QEMU仿真器执行二进制CGI来实施模糊测试。但在嵌入式设备中直接应用ACW进行CGI漏洞挖掘会面临两个难题:1) 固定输入模型难以应对嵌入式设备的多样性;2) 主模块跟踪难以覆盖依赖外部调用的分支路径,导致漏洞挖掘效率低下。针对这两个问题,一种基于反馈的惰性输入模型和选择性外部函数跟踪被提出,并在原型系统BCFuzzer中实现。最后使用实际的嵌入式CGI程序集进行了实验,结果表明相比现有方法,其能自动探索更多的代码路径,也能更快地发现更多未知漏洞。  相似文献   

12.
针对当前二进制程序模糊测试中基于变异生成的测试数据的执行路径重复率高导致代码覆盖率低的问题,提出基于遗传算法的二进制程序模糊测试方法.该方法将测试数据转换为遗传算法中的个体,利用Quick Emulator对二进制程序进行插桩以获取程序执行路径,使用基于程序执行路径的适应度函数指导遗传算法中的进化过程,使生成的测试数据能够覆盖更多的程序执行路径.实验结果表明,该方法在相同时间内达到的代码覆盖率平均比模糊测试工具American Fuzzy Lop (AFL)高25.4%.同时,该方法在漏洞挖掘实验中发现了测试程序中的所有崩溃漏洞并且其效率至少比AFL提高10%.该方法能够用于提高模糊测试的漏洞挖掘效率.  相似文献   

13.
导向式灰盒模糊测试(DGF)是能够快速生成测试用例,达到给定的程序目标区域并且发现漏洞的模糊测试技术. 针对当前DGF技术测试效率较低的问题,提出基于动态能量调控的DGF技术. 通过静态分析技术构建程序的函数调用图(CG)和控制流图(CFGs),定义并计算更准确的函数级别、基本块级别的目标距离;通过跟踪种子的执行轨迹,计算种子到目标区域的距离;基于动态能量调控函数对模糊测试中种子的变异数量进行更有效的调控,引导生成到达目标区域的测试用例. 基于该方法,实现导向式模糊测试原型系统AFL-Ant,并与现有的导向式模糊测试方法进行对比实验. 结果表明,本研究所提出的方法能够更加快速、有效地对目标区域进行测试,在补丁测试、漏洞复现方面具有较强的应用价值.  相似文献   

14.
为实现无需协议的任何结构知识进行网络安全漏洞检测,基于深度学习生成对抗式神经网络(generative adversarial nets, GAN),提出对车身网络关键字协议2000 (keyword protocol 2000, KWP2000)漏洞挖掘的方法。选用前向反馈网络作为生成模型,支持向量机作为判别模型。利用神经网络模型训练生成KWP2000协议数据的测试用例数据,再利用这些测试用例数据对KWP2000进行模糊测试。通过试验发现目标协议KWP2000的超长错误、编码错误等漏洞。试验研究表明,该模糊测试方法提高了效率和安全性。  相似文献   

15.
基于改进轮盘赌策略的反馈式模糊测试方法   总被引:1,自引:0,他引:1  
针对随机模糊测试方法测试盲目效率低下的问题,提出一种反馈式模糊测试方法,目的是通过流程优化来提高测试效果。首先,通过网络爬虫收集原始样本文件,确保原始样本的多样性。其次,通过代码覆盖率分析来从大量样本文件中筛选用于变异的最佳种子文件,在保证足够的测试空间的同时避免冗余测试。接下来通过变异种子文件的部分比特来生成测试用例,并根据测试结果基于改进轮盘赌策略不断调优种子文件的变异范围,以期发现尽可能多的软件故障。实现了一个原型系统OSSRWSFuzzer,在实验中发现了国产软件WPS Office的56个故障,体现了较强的漏洞检测能力。  相似文献   

16.
通过对以往二进制挖掘模型的研究,提出了一种新的二进制代码整数型漏洞挖掘方法模型,该模型综合运用了Fuzzing、逆向工程和符号执行等相关技术。首先利用逆向分析锁定与整数漏洞相关的代码部分,获得数据相关类型操作,检测敏感函数,构建函数结构流图,确定整数漏洞相关的代码部分;其次通过对汇编代码的符号执行,获得代码的输入输出关系和路径约束条件,调整Fuzzing的输入,这些可以大大提高Fuzzing的路径覆盖和效率。本模型使得二进制整数型漏洞的挖掘准确性得到了一定程度的提高。  相似文献   

17.
为了获得特定频谱覆盖范围的混沌信号,采用将相空间运动轨迹限定在一定区域的方法,在Lü混沌系统基础上增加非线性约束项,构成新的三维自治混沌系统,并对系统的基本动力学特性进行了理论分析和数值仿真.利用Poincaré截面法和Lyapunov指数法验证了新系统为混沌系统,分析了非线性项中参数a对系统相空间运动轨迹的影响,并找出了极限环运动状态和混沌运动状态之间存在的过渡点.结果表明,增加非线性项可以将系统的状态变量限定在一个圆环内运动,从而获得目标信号,并验证了该方法的可行性.  相似文献   

18.
目前针对Android平台的软件保护大多集中在如何保护Dalvik字节码程序,对于本地代码程序的安全性还没有引起人们足够的重视. 为了阻止攻击者对本地代码的破坏,设计实现了一种Android平台本地代码保护方法. 在原始代码中插入多个冗余数据和完整性校验代码,并且对编译后的程序进行加密,使本地代码具备了抵抗攻击者静态分析和动态篡改的能力. 实验结果表明,该方法可以在攻击者对本地代码进行篡改时及时地发现篡改行为,从而有效地保护Android平台本地代码,增强整个应用软件的安全性.  相似文献   

19.
该文研究静态修改PE输入表注入DLL的检测,提出了基于合法范围的普通检测方法和基于异常回溯的深度检测方法。第一种方法从静态的角度,对所有DLL的数据结构排列范围进行计算,无需解析DLL的功能来推断其是否恶意。第二种方法将调试的思想用于恶意DLL检测,控制目标程序的运行,跟踪目标程序初始化阶段中的DLL加载过程,并将调试API用于异常捕获,以实现检测。使用C++设计DLL检测实验,将编写的具有下载功能的DLL注入到目标程序,设计开发检测工具DLL Detector进行检测;实验成功地从静态阶段和程序初始化阶段检测出可疑模块。两种方法均支持32位和64位可执行文件,可防御恶意代码。  相似文献   

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

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