首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到17条相似文献,搜索用时 62 毫秒
1.
针对当前污点分析工具不能兼顾速度和精确度的缺陷,研究并实现一种粗细粒度结合的二进制代码动态污点分析方法。对比粗粒度污点分析和细粒度污点分析的实现过程,提出两者结合的新型分析框架。预先在线执行粗粒度污点分析以筛选有效指令,之后离线执行细粒度污点分析以计算污点信息。根据粒度的差异分别建立粗细粒度污点数据的引入标记方法,制定粗细粒度条件下的数据流和控制流传播策略,设计离线轨迹记录结构作为粗细粒度污点分析的传递文件。在原型系统上的测试结果表明,该方法通过在线粗粒度模式保证了污点分析信息采集的快速性,同时采用离线细粒度模式以合理的时间消耗提升了污点分析的精确度。  相似文献   

2.
秦彪  郭帆  杨晨霞 《计算机工程》2020,46(5):157-166
静态分析方法被广泛用于Android应用的隐私泄露检测,其以(Source,Sink)对形式检测潜在漏洞,但同时会产生大量虚警。针对该问题,提出一种上下文敏感和域敏感的污点分析方法。对污点传播的操作语义和一致性约束进行形式化定义,保证污点传播的语义正确性,同时分析插桩运行Android应用后产生的Trace片段,验证漏洞是否存在虚警。基于Soot实现原型系统并对DroidBench数据集中的70个应用进行分析,实验结果表明,该方法可成功验证4个虚警并发现8个漏报,表明其能有效判断静态分析结果的正确性。  相似文献   

3.
在针对二进制程序的实际分析场景中,动态分析方法因具有更高的准确性而得到更为广泛的关注和运用.但是以动态污点分析为代表的细粒度分析方法通常会产生较高的性能和资源开销.为缓解这些问题,本文提出一种改进的轻量级在线解耦的动态污点分析方法,其主要思想是在线解耦程序执行和指令分析,同步构建分析代码并完成分析.该方法能够进一步降低...  相似文献   

4.
基于源代码的静态分析技术是检测软件脆弱性的一种重要手段.针对不可信数据输入导致软件脆弱性的问题,提出一种基于污点分析的脆弱性检测方法.通过跟踪程序参数、环境变量等各种外部输入,标记输入的类型,在构造控制流图基础上,利用数据流分析中的相关信息,污点传播至各类脆弱性函数,从而解决缓冲区溢出、格式化字符串等问题.利用控制流、数据流分析的相关信息,提高了准确率,降低了漏报率.实验表明,该技术是一种有效的脆弱性分析方法.  相似文献   

5.
分析对比了现有的行为分析系统的优缺点,针对逆向分析过程中所遇到的代码保护技术等困难,研究并改进了指令级的动态污点分析技术。利用虚拟化技术,设计了一套具有通用性的逆向分析平台。研究插件结构实现可扩展性,以适应漏洞挖掘、恶意行为检测等领域的应用。经实验测试,该设计能与常规的逆向手段配合,显著地提高分析的效率。  相似文献   

6.
污点分析是一种常用的软件分析方法,在信息安全领域有较多的应用。现有的二进制程序动态污点分析大多采用指令级插桩的分析方法,通常会产生巨大的性能开销,使得程序执行效率大幅度降低,难以在复杂恶意样本和商业软件分析环境中有效应用。为了提升污点分析效率,降低指令级插桩分析带来的性能损耗,使污点分析更加广泛地应用在软件分析中,提出了基于函数摘要的二进制程序污点分析优化方法。所提方法使用函数污点传播规则代替指令污点传播规则,以减少数据流传播分析次数,有效提升污点分析效率。对于函数摘要,提出了函数摘要的定义;研究了不同函数结构的摘要生成算法。在函数内部,针对非循环结构,设计了路径敏感的分析方法;针对循环结构,设计了有限迭代的分析方法,将这两种分析方法相结合,解决混合结构函数的函数摘要生成。在函数摘要生成算法研究的基础上,进一步设计实现了由函数摘要生成模块、数据流记录模块、污点分析模块3个部分构成的通用污点分析框架FSTaint。对FSTaint的分析效率进行了评估,在分析真实APT恶意样本中,FSTaint的污点分析效率是libdft的7.75倍,分析效率较高;在准确性方面,FSTaint相对libd...  相似文献   

7.
在对现有动态污点分析平台研究和分析的基础上,提出一种路径自动生成技术。借助二进制静态分析技术获取目标程序的指令序列,以基本块为粒度计算执行覆盖率,在目标程序动态执行中抓取其运行轨迹,由收集到的路径约束条件构造新的路径约束条件,经约束求解生成覆盖其它路径的新的测试用例。借助虚拟化技术实现动态污点分析各用例的并行执行,较大幅度提高污点分析的路径覆盖率和执行效率。  相似文献   

8.
曾祥飞  郭帆  涂风涛 《计算机应用》2015,35(8):2386-2391
Web程序的安全威胁主要是由外部输入未验证引发的安全漏洞,如数据库注入漏洞和跨站脚本漏洞,动态污点分析可有效定位此类漏洞。提出一种基于对象跟踪的动态分析方法,与现有动态方法跟踪字符和字符串对象不同,追踪所有可能被污染的Java对象。方法应用对象哈希值表示污点对象,定义方法节点和方法坐标记录污点传播时的程序位置,支持污点传播路径追踪,针对Java流对象装饰模式提出流家族污点传播分析。方法设计一种语言规范对Java类库中污点传播相关的方法集合以及用户自定义方法建模,按照污点引入、传播、验证和使用,对方法集分类后设计和形式化定义各类方法的污点传播语义。在SOOT平台实现对J2EE源码或字节码插桩框架,使用静态分析计算可达方法集以减少插桩规模,应用原型系统对真实网站的测试结果表明该方法可有效发现注入漏洞。  相似文献   

9.
被污点污染的数字照片的复原是新的研究课题;利用静态数字摄像设备可以在相同污染条件下反复拍摄的特点,提出一种根据参考照片来自动检测污点并且修复照片的方法。该方法首先对单色照片的污点进行定位并提取颜色特征,然后利用这些信息对其它含有同样污点的照片进行补偿。实验表明,该方法能够在不损失原始图像信息的情况下有效地去除数字照片中的污点,复原效果良好。  相似文献   

10.
一种路径敏感的静态缺陷检测方法   总被引:10,自引:0,他引:10  
提出一种多项式复杂度的路径敏感静态缺陷检测算法.该方法采用变量的抽象取值范围来表示属性状态条件,通过属性状态条件中的变量抽象取值范围为空来判断不可达路径.在控制流图(control flow graph,简称CFG)中的汇合节点上合并相同属性状态的状态条件,从而避免完整路径上下文分析的组合爆炸问题.该算法已应用于缺陷检测系统DTS(defect testing system).实际测试结果表明,该方法能够减少误报.  相似文献   

11.
隐式流对于污点分析方法的准确性有重要影响。为此,提出一种基于程序单静态赋值形式的隐式流检测方法。通过生成控制流图的必经节点树检测控制依赖关系,计算必经边界发现程序汇合点,引入虚拟取值函数获得汇合点变量的多个赋值,从而判别变量取值分歧并标记污点属性。与人工审计结果的对比证明,该方法能够诊断2个污点分析工具的污染缺失和污染过度问题,有效降低隐式流分析的误报率和漏报率。  相似文献   

12.
针对Android应用中存在的漏洞易被恶意攻击者利用进行攻击的问题,提出了一种基于Dalvik寄存器污点分析的Android应用漏洞检测方法。首先对Android应用进行预分析以获取应用基本信息并构建函数调用图,然后将指定的Dalvik寄存器作为污点,实现对污点的前向分析和后向分析功能,最后使用脚本执行器连接预分析模块、污点分析模块和漏洞检测脚本,共同完成漏洞检测功能。基于该检测方法实现了原型系统AndroDetector并进行了对比性实验,实验结果表明此漏洞检测方法检测范围更广且准确率更高。  相似文献   

13.
Android移动设备中存储了大量的敏感信息,如通话记录、联系人等,容易成为恶意攻击者的目标。基于静态污点分析技术,提出了一种面向Android平台的隐私泄露检测方法。通过提取Android敏感权限与API,创建两者之间的映射关系,生成Android应用程序的函数调用图,实现了对于大规模应用程序中潜在隐私数据泄露行为的检测。实验结果表明,本文所提出方法的准确率较高,且运行耗时较短,适合于大规模应用程序的检测。  相似文献   

14.
基于执行踪迹离线索引的污点分析方法研究   总被引:1,自引:0,他引:1  
马金鑫  李舟军  张涛  沈东  章张锴 《软件学报》2017,28(9):2388-2401
针对二进制代码的污点分析方法在软件逆向工程、漏洞分析及恶意代码检测等方面具有重大的意义,目前大多数污点分析方法不支持浮点指令,执行效率较低,且传播的精度也不够高.提出并实现了一种基于执行踪迹离线索引的污点分析方法,以字节为粒度,且支持污点标签.提出执行踪迹离线索引的生成及查询算法,通过离线索引可跳过与污点数据无关的指令,以提高污点分析的效率.首次描述并解决了即时翻译执行导致的污点丢失问题.使用污点标签以标识污点的来源和位置.提出较完善的污点传播算法,支持浮点指令,以尽可能精确地刻画污点信息从源操作数传递到目的操作数的过程.实现了灵活的可配置机制,用户可通过黑名单动态地引入污点数据.将本文提出的方法应用到漏洞检测的场景中,使用12个真实的软件漏洞作为测试样本集,将本文中的方法与TEMU作对比实验,实验结果表明本文方法具备较强的漏洞检测能力,可验证的漏洞数比TEMU更多,且其平均执行效率比TEMU高5倍.  相似文献   

15.
Abstract. We introduce the polynomial time version, in short ≤ P T -introreducibility, of the notion of introreducibility studied in Recursion Theory. We give a simpler proof of the known fact that a set is ≤ P T -introreducible if and only if it is in P. Our proof generalizes to virtually all the computation bounded reducibilities ≤ r , showing that a set is ≤ r -introreducible if and only if it belongs to the minimum ≤ r -degree. It also holds for most unbounded reducibilities like ≤ m , ≤ c , ≤ d , ≤ p , ≤ tt , etc., but it does not hold for ≤ T . A very strong way for a set L to fail being ≤ r -introreducible is that L is not ≤ r -reducible to any coinfinite subset of L . We call such sets ≤ r -introimmune. It is known that ≤ T -introimmune sets exist but they are not arithmetical. In this paper we ask for which reducibilities ≤ r there exist arithmetical ≤ r -introimmune sets. We show that they exist for the reducibilities ≤ c and ≤ N m . Finally, we prove separation results between introimmunities.  相似文献   

16.
Abstract. We introduce the polynomial time version, in short ≤ P T -introreducibility, of the notion of introreducibility studied in Recursion Theory. We give a simpler proof of the known fact that a set is ≤ P T -introreducible if and only if it is in P. Our proof generalizes to virtually all the computation bounded reducibilities ≤ r , showing that a set is ≤ r -introreducible if and only if it belongs to the minimum ≤ r -degree. It also holds for most unbounded reducibilities like ≤ m , ≤ c , ≤ d , ≤ p , ≤ tt , etc., but it does not hold for ≤ T . A very strong way for a set L to fail being ≤ r -introreducible is that L is not ≤ r -reducible to any coinfinite subset of L . We call such sets ≤ r -introimmune. It is known that ≤ T -introimmune sets exist but they are not arithmetical. In this paper we ask for which reducibilities ≤ r there exist arithmetical ≤ r -introimmune sets. We show that they exist for the reducibilities ≤ c and ≤ N m . Finally, we prove separation results between introimmunities.  相似文献   

17.
近十年来,高级持续性威胁(APT,advanced persistent threat)越来越引起人们的关注。为了防御和检测APT攻击,学者提出了基于系统审计日志的入侵取证方案。系统审计日志可以详细记录主机上的系统调用过程,因此非常适用于入侵取证工作。然而,系统审计日志也有着致命的弊端:日志庞大冗余。再加上APT攻击往往长期潜伏、无孔不入,企业不得不为每台联网主机长期保存日志,因此导致巨大的存储计算成本。为了解决这一问题,本文提出一种模仿二进制动态污点分析的日志压缩方案T-Tracker。T-Tracker首先检测日志内部与外部数据发生交互的系统调用,生成初始污点集合,然后追踪污点在主机内的扩散过程,这个过程中只有污点扩散路径上的系统调用能被保留下来,其余均不保留,从而达到日志压缩的目的。本研究的测试表明,该方案可以达到80%的压缩效果,即企业将能够存储相当于原来数量五倍的日志数据。同时,T-Tracker完整保留了受到外部数据影响的日志记录,因此对于入侵取证而言,可以等价地替换原始日志,而不会丢失攻击痕迹。  相似文献   

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

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