首页 | 官方网站   微博 | 高级检索  
相似文献
 共查询到19条相似文献,搜索用时 140 毫秒
1.
由于Linux系统的设备驱动工作在内核模式中,在这种特定的工作场景下,由设备驱动引发的漏洞问题极易影响操作系统的稳定性和安全性.当前在各类设备驱动漏洞中所占比例较高的当属资源操作类漏洞,针对这种情况,我们提出了一种基于配对函数调用场景的设备驱动漏洞检测方法.首先引入配对函数的概念,据此对特定的驱动程序做配对函数的自动提取与优化;随后结合手工分析结果构建配对函数在资源申请与释放过程中的执行路径;最后基于相应的函数调用场景进行配对检查,检测并验证设备驱动程序中内存资源的申请和释放是否为完全层次性匹配.为验证该方法的有效性,实验分别选取不同的设备驱动应用该漏洞检测方法,记录相应的漏报率、误报率及覆盖度.实验结果表明,该设备驱动漏洞检测方法精确率较高,检测速度快.并且该方法不依赖于实时编译以及硬件设备等条件.  相似文献   

2.
随着技术的进步,Windows操作系统日益完善,多种内存保护技术的结合使得传统的基于缓冲区溢出攻击越来越困难,在这种情况下,内核漏洞往往可以作为突破安全防线的切入点.该论文首先分析了现有Windows内核漏洞挖掘方法,阐述了Windows内核下进行Fuzzing测试的原理和步骤,针对Windows win32k.sys对窗口消息的处理、第三方驱动程序对IoControlCode的处理、安全软件对SSDT、ShadowSSDT函数的处理,确定数据输入路径,挖掘出多个内核漏洞,验证了该方法的有效性.  相似文献   

3.
为了提高对缓冲区溢出漏洞的挖掘效率, 提出了使用数据关联性分析辅助漏洞挖掘的方法。该方法首先对目标文件进行反编译, 在反编译的基础上构建函数的抽象语法树 (AST), 设计算法提取关键变量的反向关联信息, 之后将提取的信息应用到漏洞挖掘中。该方法在无源码漏洞挖掘方面有明显优势, 能有效发掘软件中存在的缓冲区溢出漏洞可疑点, 提高漏洞挖掘的效率和自动化程度。  相似文献   

4.
《软件工程师》2017,(2):12-15
软件受到攻击后将在所执行的系统调用状况中有所体现,因此可将基于系统调用的入侵检测技术应用于软件漏洞的检测。本文针对无源码的可执行程序,引入系统调用节点和系统调用上下文信息的概念来刻画软件行为的动态特性和漏洞的位置信息,利用改进的STIDE算法构造软件正常行为特征库来检测并定位漏洞。实验结果表明该方法能够准确获取软件行为信息,且具有较强的漏洞检测能力。  相似文献   

5.
循环拷贝出错是缓冲区溢出漏洞产生的主要原因之一。为了提高此类漏洞的检测效率, 提出一种基于反编译的循环脆弱点检测方法。该方法首先对目标文件进行反编译, 在反编译的基础上构建函数的AST(抽象语法树), 设计算法提取函数内部的循环信息; 然后根据循环脆弱点存在的特性, 构建有限状态自动机, 对循环脆弱点进行检测。该方法在无源码漏洞检测方面有明显优势, 能有效发掘软件中存在的循环脆弱点, 提高漏洞挖掘的效率和自动化程度。  相似文献   

6.
内核是操作系统的核心,它构建了操作系统各类程序运行时需要的基础环境:如进程调度、存储管理、文件系统、设备驱动和网络通信等。操作系统内核漏洞的存在可能使得计算机系统遭受拒绝服务、信息泄露、超级用户权限提升等攻击,因此,针对内核的漏洞挖掘一直是网络安全领域的研究热点。本文在现有的研究基础上,提出一种基于覆盖率制导的内核漏洞并行模糊测试模型,该模型以代码覆盖率为导向,以计算节点和控制节点组成的星型结构作为并行模型,各计算节点通过代码覆盖率对系统内核持续测试,控制节点完成计算节点间代码覆盖率的收集与交互,突破了传统测试模型对计算资源要求限制和数据竞争的瓶颈,极大的提升了代码覆盖率及测试速度,加快了漏洞挖掘的效率。为了验证模型的实用性及有效性,利用Diskaller与Syzkaller和Triforce进行对比,一定条件下Diskaller覆盖率较Syzkaller提升12.8%,执行速率提升229%,较Triforce覆盖率提升335%,执行速率提升450%,并且发现了Linux内核中两个先前未被发现的漏洞。  相似文献   

7.
文章针对传统网络协议挖掘的缺陷,着重分析了传统网络协议的分析手段、漏洞类型、产生原因和挖掘方法。文章针对传统网络协议挖掘中协议的分析过程不能自动化、构造Fuzz的数据不符合网络协议格式规范和交互的流程导致无法深入快速地进行漏洞挖掘的缺点,提出了一种基于自动化协议分析算法、流量聚类分类算法、深度数据包检测技术、Fuzz技术相互整合的自动化协议分析漏洞挖掘工具设计方案。文章设计了一套自动化协议分析的漏洞挖掘系统,给出了系统的工作流程和组织结构,以及各个模块的功能和相互之间的关系,实现了一个自动化协议分析漏洞挖掘系统的原型。文章的最大创新是通过自动化协议分析、流量聚类分类算法和DPI技术的有机结合,实现了自动化协议分析、自动形成测试路径的网络协议漏洞挖掘技术。  相似文献   

8.
《软件》2016,(8):95-98
基于源码与二进制文件的的静态漏洞挖掘分析可以检测出很多漏洞,但同时存在很多漏报以及误报。动态分析技术分析动态调试器中程序的内存、状态以及调试器的寄存器等信息,进而发现潜在的安全漏洞,具有较高的准确率和较强的针对性。但动态漏洞分析技术在输入数据格式较为复杂时,很容易构造出触发程序异常的数据。针对二者的不足,本文提出了一种基于静、动态结合的漏洞挖掘分析方法,为漏洞挖掘分析增添了新的思路。  相似文献   

9.
利用缓冲区溢出漏洞的攻击是当前安全领域面临的主要威胁之一.缓冲区溢出漏洞的分析通常需要从引发该溢出的函数调用入手,溢出函数的定位往往需要耗费大量的时间和精力,因此实现该函数的自动定位可以极大地缩短安全响应时间.针对这种情况,基于Windows调试框架提出并实现了一个缓冲区溢出函数自动定位的模型LVF.简要地介绍了LVF的工作模式,着重讨论了LVF的定位方法,并给出了LVF的框架设计.实验结果表明,LVF能够有效地实现溢出函数的自动定位.  相似文献   

10.
提权攻击是针对Linux系统的一种重要攻击手段。根据提权攻击所利用的漏洞类型,一般可将其分为应用层提权攻击和内核提权攻击。现有的防御技术已经能够防御基本的应用层提权攻击,但是并不能完全防御内核提权攻击,内核提权攻击仍是Linux系统面临的一个重要威胁。内核提权攻击一般通过利用内核提权漏洞进行攻击。针对内核提权攻击,分析研究了基本的内核提权漏洞利用原理以及权限提升方法,并对典型的内核提权攻击防御技术进行了分析。最后通过实验对SELinux针对内核提权攻击的防御效果进行了分析验证,并针对发现的问题指出了下一步具有可行性的研究方向。  相似文献   

11.
段旭  吴敬征  罗天悦  杨牧天  武延军 《软件学报》2020,31(11):3404-3420
随着信息安全愈发严峻的趋势,软件漏洞已成为计算机安全的主要威胁之一.如何准确地挖掘程序中存在的漏洞,是信息安全领域的关键问题.然而,现有的静态漏洞挖掘方法在挖掘漏洞特征不明显的漏洞时准确率明显下降.一方面,基于规则的方法通过在目标源程序中匹配专家预先定义的漏洞模式挖掘漏洞,其预定义的漏洞模式较为刻板单一,无法覆盖到细节特征,导致其存在准确率低、误报率高等问题;另一方面,基于学习的方法无法充分地对程序源代码的特征信息进行建模,并且无法有效地捕捉关键特征信息,导致其在面对漏洞特征不明显的漏洞时,无法准确地进行挖掘.针对上述问题,提出了一种基于代码属性图及注意力双向LSTM的源码级漏洞挖掘方法.该方法首先将程序源代码转换为包含语义特征信息的代码属性图,并对其进行切片以剔除与敏感操作无关的冗余信息;其次,使用编码算法将代码属性图编码为特征张量;然后,利用大规模特征数据集训练基于双向LSTM和注意力机制的神经网络;最后,使用训练完毕的神经网络实现对目标程序中的漏洞进行挖掘.实验结果显示,在SARD缓冲区错误数据集、SARD资源管理错误数据集及它们两个C语言程序构成的子集上,该方法的F1分数分别达到了82.8%,77.4%,82.5%和78.0%,与基于规则的静态挖掘工具Flawfinder和RATS以及基于学习的程序分析模型TBCNN相比,有显著的提高.  相似文献   

12.
针对开源软件漏洞,提出一种基于深度聚类算法的软件源代码漏洞检测方法。该方法利用代码图模型构造开源软件代码属性图,遍历得到关键代码节点并提取出应用程序编程接口(API)序列,将其嵌入向量空间,以关键代码为中心进行聚类,根据聚类结果计算每个函数的异常值,生成检测报告并匹配漏洞库,从而检测出源代码中的漏洞。实验结果表明,该方法能够定位开源软件中漏洞所在的关键代码段并检测出相应漏洞。  相似文献   

13.
软件升级过程中,缺乏对升级信息或升级包的认证可能会导致基于中间人攻击的远程代码执行漏洞。为此,提出一种升级漏洞自动检测方法。该方法通过提取升级过程中的网络流量,对升级机制自动画像,将其与漏洞特征向量匹配,预判升级漏洞;在模拟验证环境中,利用画像信息实施中间人攻击,验证检测结果。基于该方法设计了升级漏洞自动分析与验证系统,对 184 个 Windows 应用软件样本进行测试,检测出 117个样本的升级漏洞,证明了本方法的有效性。  相似文献   

14.
漏洞这一名词伴随着计算机软件领域的发展已经走过了数十载。自世界上第一个软件漏洞被公开以来,软件安全研究者和工程师们就一直在探索漏洞的挖掘与分析方法。源代码漏洞静态分析是一种能够贯穿整个软件开发生命周期的、帮助软件开发人员及早发现漏洞的技术,在业界有着广泛的使用。然而,随着软件的体量越来越大,软件的功能越来越复杂,如何表示和建模软件源代码是当前面临的一个难题;此外,近年来的研究倾向于将源代码漏洞静态分析和机器学习相结合,试图通过引入机器学习模型提升漏洞挖掘的精度,但如何选择和构建合适的机器学习模型是该研究方向的一个核心问题。本文将目光聚焦于源代码漏洞静态分析技术(以下简称:静态分析技术),通过对该领域相关工作的回顾,将静态分析技术的研究分为两个方向:传统静态分析和基于学习的静态分析。传统静态分析主要是利用数据流分析、污点分析等一系列软件分析技术对软件的源代码进行建模分析;基于学习的静态分析则是将源代码以数值的形式表示并提交给学习模型,利用学习模型挖掘源代码的深层次表征特征和关联性。本文首先阐述了软件漏洞分析技术的基本概念,对比了静态分析技术和动态分析技术的优劣;然后对源代码的表示方法进行了说明。接着,本文对传统静态分析和基于学习的静态分析的一般步骤进行了总结,同时对这两个研究方向典型的研究成果进行了系统地梳理,归纳了它们的技术特点和工作流程,提出了当前静态分析技术中存在的问题,并对该方向上未来的研究工作进行了展望。  相似文献   

15.
为弥补软件漏洞挖掘领域的不足,文章介绍了一种基于源代码信息流分析的静态漏洞挖掘方法,通过对源代码中函数的数据输入点进行信息流分析,观察其流向,在敏感函数调用点进行分析判断,最终确定是否存在漏洞。  相似文献   

16.
文敏  王荣存  姜淑娟 《计算机应用》2022,42(6):1814-1821
软件安全的根源在于软件开发人员开发的源代码,但随着软件规模和复杂性不断提高,仅靠人工检测漏洞代价高昂且难以扩展,而现有的代码分析工具有较高的误报率与漏报率。为此,提出一种基于关系图卷积网络(RGCN)的自动化漏洞检测方法以进一步提高漏洞检测的精度。首先将程序源代码转换为包含语法、语义特征信息的CPG;然后使用RGCN对图结构进行表示学习;最后训练神经网络模型预测程序源代码中的漏洞。为验证所提方法的有效性,在真实的软件漏洞样本上开展了实验验证,结果表明所提方法的漏洞检测结果的召回率和F1值分别达到了80.27%和63.78%。与Flawfinder、VulDeepecker和基于图卷积网络(GCN)的同类方法相比,所提方法的F1值分别提高了182%、12%和55%,可见所提方法能有效提高漏洞检测能力。  相似文献   

17.
开源代码托管平台为软件开发行业带来了活力和机遇,但存在诸多安全隐患.开源代码的不规范性、项目依赖库的复杂性、漏洞披露平台收集漏洞的被动性等问题都影响着开源项目及引入开源组件的闭源项目的 安全,大部分漏洞修复行为无法及时被察觉和识别,进而将各类项目的 安全风险直接暴露给攻击者.为了全面且及时地发现开源项目中的漏洞修复行为...  相似文献   

18.
在基于反汇编的输入路径追踪技术的基础上,结合基于代码覆盖的测试数据生成和基于快照恢复的错误注入技术,将其应用于模糊测试中。提出一种软件安全漏洞自动化挖掘的方法,较好地解决传统模糊技术存在的若干局限。设计并实现一个基于此方法的测试系统,通过对实例软件的漏洞挖掘实验,验证该方法的有效性。  相似文献   

19.
源代码漏洞的自动检测是一个重要的研究课题。目前现有的解决方案大多是基于线性模型,依赖于源代码的文本信息而忽略了语法结构信息,从而造成了源代码语法和语义信息的丢失,同时也遗漏了许多漏洞特征。提出了一种基于结构表征的智能化漏洞检测系统Astor,致力于使用源代码的结构信息进行智能化漏洞检测,所考虑的结构信息是抽象语法树(Abstract Syntax Tree,AST)。首先,构建了一个从源代码转化而来且包含源码语法结构信息的数据集,提出使用深度优先遍历的机制获取AST的语法表征。最后,使用神经网络模型学习AST的语法表征。为了评估Astor的性能,对多个基于结构化数据和基于线性数据的漏洞检测系统进行比较,实验结果表明Astor能有效提升漏洞检测能力,降低漏报率和误报率。此外,还进一步总结出结构化模型更适用于长度大,信息量丰富的数据。  相似文献   

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

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

京公网安备 11010802026262号