首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 46 毫秒
1.
静态反汇编是对程序进行逆向工程的第一步,它将程序的可执行机器码以汇编指令代码的形式表示,给盗用软件知识产权和发掘软件漏洞提供了可能。为了混淆静态反汇编过程,增加对程序进行反汇编的难度,本文深入研究基于分支函数的静态反汇编混淆技术,针对其隐蔽性较差和代码执行效率低下的缺点,提出一种改进的分支函数静态反汇编混淆技术。改进后的混淆技术不仅能够有效地隐藏程序中的跳转指令,提高了代码的执行效率,同时增加了软件逆向工程分析的难度。  相似文献   

2.
程序静态分析(Program Static Analysis)是指在不运行代码的方式下,通过词法分析、语法分析、控制流分析等技术对程序代码进行扫描,验证代码是否满足规范性、安全性、可靠性、可维护性等指标的一种代码分析技术。首先对程序静态分析的特点、常用静态分析技术、静态分析实现方式进行描述,然后通过一个实例讲解C语言静态代码分析中函数与变量的调用关系的实现方法,总结了现今在C语言调用关系分析中可以借鉴的工具与实现方式。  相似文献   

3.
针对当前软件保护技术存在的不足,提出一种代码碎片化技术,该技术是一种以函数为单元,对函数进行代码shell化、内存布局随机化、执行动态链接化的新型软件保护技术,代码shell化实现代码碎片的位置无关变形,内存布局随机化实现代码碎片的随机内存加载,动态链接化实现对代码碎片的动态执行,通过上述3个环节实现对程序的碎片化处理。实验表明,代码碎片化技术不仅能实现程序执行过程中函数碎片内存位置的随机化,还能实现函数碎片的动态链接执行,增加程序静态逆向分析和动态逆向调试的难度,提高程序的抗逆向分析能力。  相似文献   

4.
目前,Android上恶意程序的识别主要通过静态检测,但普遍识别率不高。文章基于静态检测原理,使用了一种基于行为的检测方法,以变量跟踪以及函数等价匹配的方式来判断一个Android安装包中是否存在恶意行为,从而增大了静态检测的准确率。在文章中,以短信吸费程序为样本,实现了这种基于行为分析的恶意程序检测工具。并在测试中证明了它的有效性。  相似文献   

5.
提出一个高效准确的基于程序行为的异常入侵检测模型,该模型对于静态链接的程序部分以及函数递归基于优化的堆栈遍历技术获得调用堆栈状态信息;对于程序循环,使用代码插入和Null挤压技术来高效地获得系统调用上下文信息;基于动态通知技术,处理非标准的控制转移;从而,能够获得完备的系统调用上下文信息,提高了模型的准确度.给出了模型的描述和实施,分析了其优点.在Linux程序上的实验表明,该模型可保持检测的高效率.  相似文献   

6.
薄拾  葛宁  林孝康 《计算机科学》2010,37(3):144-148
代码剖析是分析程序行为和发现性能瓶颈的重要手段。根据可重配置处理器的定制指令设计需要,提出了一种基于虚拟机技术的代码剖析方法AID-prof。该方法的优势在于结构无关以及静态\动态分析的无缝契合。基于AID-prof,设计了一种自动化的定制指令识别过程CID。实验显示,AID-prof可有效地发掘程序热点,并且示例程序通过CID产生的定制指令获得明显加速。  相似文献   

7.
基于控制流的静态反汇编算法研究   总被引:4,自引:0,他引:4  
该文在分析各种类型的指令对程序静态流程影响的基础上,提出了一种基于程序流程遍历图的静态反汇编算法,并给出了一种基于统计学的代码间隙填充技术对由间接跳转和间接调用所引用的代码区进行反汇编的方法。  相似文献   

8.
阐述可执行代码抽象存储空间模型的概念并给出程序运行时刻环境抽象表示技术。通过抽象解释静态逼近程序不动点语义的理论保证二进制代码数据流分析的正确性以及可计算性。基于抽象解释和单调数据流框架提出一种自动分析可执行代码变量取值范围的方法及自动获取程序循环最大迭代次数和不可执行路径,并给出数据流分析实例。  相似文献   

9.
闰伟  卢炎生 《计算机科学》2012,39(2):143-147
提出了一种基于程序分析的代码查询技术,它能有效地应用于代码审查、程序自动插桩等常用的软件工程的研究场景。它通过代码静态分析获得程序元素信息,并将其保存为中间结构,作为代码查询过程的目标集合;查询过程以程序元素为目标,查询语言以谓词逻辑表达式的形式描述查询条件。基于此技术,实现了一个面向C/C++语言的代码查询工具。  相似文献   

10.
可执行程序的缺陷函数检测是软件漏洞发现的重要技术手段之一。从二进制代码指令流的角度出发,研究了缺陷函数的签名机制,提出了一种基于可执行程序静态分析的缺陷函数检测方法。该方法通过静态分析应用程序的可执行代码,建立进程运行过程中可能的函数调用序列集合。以该集合为基础,通过对比分析缺陷函数签名,可以准确检测该程序调用的缺陷函数集合,以及分析可能导致的脆弱性。通过实验分析,验证了该方法对于缺陷函数检测的有效性。  相似文献   

11.
戴小鹏  喻飞  张林峰  沈岳 《计算机工程》2007,33(10):144-146
入侵检测是网络安全研究的热点技术之一,是新一代安全保障方案。该文实现了一种基于系统调用的异常入侵检测方法,使用系统调用作为输入,构建程序中函数的有限状态自动机,利用该自动机检测进程流程是否发生异常来确定是否发生了入侵。实验结果表明,该技术不仅能有效地检测出入侵行为,而且可以发现程序漏洞的位置,便于修改代码。  相似文献   

12.
夏之阳  易平  杨涛 《计算机工程》2019,45(12):141-146
静态漏洞检测通常只针对文本进行检测,执行效率高但是易产生误报。针对该问题,结合神经网络技术,提出一种基于代码相似性的漏洞检测方法。通过对程序源代码进行敏感函数定位、程序切片和变量替换等数据预处理操作,获取训练所用数据。构建基于Bi-LSTM的相似性判别模型,设定漏洞模板数据库,将待测代码与漏洞模板作比对以判别其是否存在漏洞。实验结果表明,该方法的准确率可达88.1%,误报率低至4.7%。  相似文献   

13.
王远 《微计算机信息》2006,22(30):224-226
API函数拦截是指通过特定的方法中断API函数的调用,转而执行用户的功能代码的一种行为。该技术由代码加载和用户代码组成。文中首先详细讨论了Windows系统中三种代码加载技术:Hook(钩子)、使用动态链接库的远线程插入和使用代码段的远线程插入。同时对这三种技术的优缺点进行了分析,给出了它们各自的应用场合。最后给出了一种函数拦截系统的设计和实现。  相似文献   

14.
为解决Android恶意软件检测问题,提出一种利用多特征基于改进随机森林算法的Android恶意软件静态检测模型。模型采用了基于行为的静态检测技术,选取Android应用的权限、四大组件、API调用以及程序的关键信息如动态代码、反射代码、本机代码、密码代码和应用程序数据库等属性特征,对特征属性进行优化选择,并生成对应的特征向量集合。最后对随机森林算法进行改进,并将其应用到本模型的Android应用检测中。实验选取了6?000个正常样本和6?000个恶意样本进行分类检测,结果表明该方法具有较好的检测效果。  相似文献   

15.
函数调用相关信息识别是二进制代码静态分析的基础,也是恶意代码分析的重要线索。二进制代码混淆技术通过对函数调用指令call、参数传递过程和调用返回过程的混淆来隐藏代码中函数的信息。这大大增加了程序逆向分析的难度,此技术被广泛应用在变形和多态病毒中,使其逃脱杀毒软件的查杀。论文给出了一种静态分析方法,引入了抽象栈图的概念,给出了其构造算法,利用它能够有效识别出代码中对函数调用的混淆。  相似文献   

16.
二进制代码重写是程序分析领域的一个热点研究方向。提出一种基于空间约束的静态二进制代码重写技术,在保持代码功能和结构的情况下实现自动化重写。介绍二进制代码重写的设计思路,描述空闲空间构造和管理的策略,给出空间约束的代码重写算法。实验结果证明了该技术的有效性和可靠性。  相似文献   

17.
一、Windows系统为何大量使用动态链接库 WINDOWS95和WINDOWS3.X系统中均使用了大量动态链接库。由于使用动态链接库只需开发者在程序中调用库函数前,事先定义函数在库中地址指针或直接利用功能函数获取地址指针,在编译生成可执行文件时,目标代码中只包含动态链接库中函数的地址指针或获取函数地址指针的功能函数代码,所有应用程序可以共享同一目标动态函数库,而不像静态链接库那样,所有应用程序目标代码中均包含有完全相同的静态链接库函数代码。 此外应用程序在使用动态链接库时,系统只将动  相似文献   

18.
文章介绍了一款基于行为的移动智能终端恶意软件自动化分析与检测系统,通过对大量恶意样本的研究,构建了一套敏感行为库,在不依赖恶意软件静态特征库的情况下,可有效判别已知和未知的恶意软件。该系统将静态分析技术与动态分析技术相结合,在静态分析技术中,增加了敏感API代码快速定位功能;动态分析技术的使用有效提升了可疑样本的敏感行为捕获的覆盖面和准确性。最后,基于SVM算法对样本的恶意性进行自动化判定。实验结果表明,该系统能够有效分析可疑样本行为,检出率高、误报率低,具有良好的应用前景。  相似文献   

19.
近年来,代码重用攻击(Code Reuse Attack)已经成为针对二进制程序的一种主流攻击方式。以ROP为代表的代码重用攻击,利用内存空间中存在的指令片段,构建出能实现特定功能的指令序列,达成了恶意目标。文中根据代码重用攻击的基本原理,提出了基于实时装卸载函数代码的防御方法,通过动态装卸载的方式裁剪代码空间,从而达到缩小攻击面以防御代码重用的目的。首先,以静态分析的方式获取受保护程序依赖库的函数信息;以替换库的形式使用这些信息;其次,在Linux动态装载器中引入实时装载函数的操作及自动触发和还原的装卸载流程,为了减小频繁卸载导致的高额开销,设计了随机化批量卸载机制;最后,在真实环境中开展实验,验证了该方案防御代码重用攻击的有效性,展示了随机卸载策略的意义。  相似文献   

20.
陈涛  舒辉  熊小兵 《计算机科学》2021,48(4):288-294
代码Shell化技术是一种实现程序从源码形态到二进制形态的程序变换技术。该技术可用于实现Shellcode生成,生成包括漏洞利用过程中的Shellcode及后渗透测试过程中的功能性Shellcode。文中形式化地描述了程序中代码与数据的关系,提出了一种基于LLVM(Low Level Virtual Machine)的通用程序变换方法,该方法可用于实现操作系统无关的代码Shell化。该技术通过构建代码内置全局数据表和添加动态重定位代码,将代码对数据的绝对内存地址访问转化为对代码内部全局数据表的相对地址访问,重构了代码与数据之间的引用关系,解决了代码执行过程中对操作系统重定位机制依赖的问题,使得生成的Shellcode代码具有位置无关特性。在验证实验中,使用适用于不同操作系统的不同规模的工程源码对基于该技术实现的Shellcode生成系统进行了功能测试,并对比了Shell化前后代码功能的一致性、文件大小、函数数量和运行时间,实验结果表明基于该技术的Shellcode生成系统功能正常,具有较好的兼容性和通用性。  相似文献   

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

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