CN111240991B - 一种抗隐式污点传播的动态污点检测方法及系统 - Google Patents

一种抗隐式污点传播的动态污点检测方法及系统 Download PDF

Info

Publication number
CN111240991B
CN111240991B CN202010064646.1A CN202010064646A CN111240991B CN 111240991 B CN111240991 B CN 111240991B CN 202010064646 A CN202010064646 A CN 202010064646A CN 111240991 B CN111240991 B CN 111240991B
Authority
CN
China
Prior art keywords
data
taint
implicit
vulnerability
stream information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010064646.1A
Other languages
English (en)
Other versions
CN111240991A (zh
Inventor
刘思源
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chongqing Fumin Bank Co Ltd
Original Assignee
Chongqing Fumin Bank Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chongqing Fumin Bank Co Ltd filed Critical Chongqing Fumin Bank Co Ltd
Priority to CN202010064646.1A priority Critical patent/CN111240991B/zh
Publication of CN111240991A publication Critical patent/CN111240991A/zh
Application granted granted Critical
Publication of CN111240991B publication Critical patent/CN111240991B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/366Software debugging using diagnostics

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及软件安全性分析技术领域,特别涉及一种抗隐式污点传播的动态污点检测方法及系统,所述方法应用于所述系统,所述方法包括S1、将从外部获取的不可信数据标记为污点数据,并将所述污点数据存入内存中;S2、采集在内存中被调用的污点数据,并根据污点标记策略对污点数据进行筛选、过滤得到相应的有效污点数据;S3、捕获被测程序载入污点数据运行后的数据流信息,将有效污点数据按字节变异,并将变异后的污点数据作为模拟数据重新载入被测程序,再捕获隐式数据流信息;S4、根据所捕获的数据流信息和隐式数据流信息进行对比,寻找数据流信息与隐式数据流信息之间的依赖关系。本发明解决了现有的污点检测方法无法检测隐式污点传播的问题。

Description

一种抗隐式污点传播的动态污点检测方法及系统
技术领域
本发明涉及软件安全性分析技术领域,特别涉及一种抗隐式污点传播的动态污点检测方法及系统。
背景技术
污点分析技术通过对不信任的输入数据做标记,静态跟踪程序运行过程中污点数据的传播路径,检测使用污点数据的不安全方式,用这种方法可以检测到敏感数据(如字符串参数)被改写而造成的缓冲区溢出、格式化字符串等问题。当检测到一个攻击时,污点分析技术可以提供详细的攻击过程,给出由于污点数据所导致的漏洞被利用的过程。隐式污点传播则是为了对抗显示污点传播检测工具而提出来的一类攻击方法,用于绕过现有的污点检测工具,并实施进一步的攻击。隐式污点传播包括多种攻击方式:控制流依赖方式、良心代码构造方式以及边信道攻击方式。
如图1所示,以现有简单编码攻击为例,实现隐式污点传播。简单编码攻击是一种数组索引攻击方式,XTainted的值将用于索引判断语句中的控制条件,YUntainted的值将通过判断语句中的控制条件的取值进行传递。这样,XTainted到YUntainted的非传值过程将无法被显式污点分析工具截获。通过精心编写控制语句将可以达到传送所有ASCII码表中的所有字符的效果,通过这种攻击手段攻击者可以获得一个完整的未标记为污点数据的字符数组。
简单编码攻击中的每一个用于if控制语句的symbol都来自一个未被标记为污点数据的字符数组,用于比对XTainted的值,在判断条件为真时,将symbol的值传递给YUntainted。通过这种方法,每一个XTainted的值都会被传递给YUntainted,同时也躲避了显式污点分析工具的审查。
动态污点分析技术是一种针对数据信息流动的分析方法,该方法贯穿程序运行始终,跟踪数据在程序中的流动情况,记录程序对该数据的处理方式,求解目的数据与源数据的数学依赖关系。污点分析技术主要分为三个方面:污点标记、污点传播和污点检查。污点标记是指将来自文件、键盘、网络等不可信外部渠道输入的数据标记为“污点”。源数据进入程序之后,将会因为被程序处理而导致值的传递。因为源数据是不可信的,所以经过各种运算得到的数据依然是不可信的也会被打上污点属性,这个过程就是污点传播。数据在程序内部的流动,将引起污点集合的变更,准确地识别出哪些数据需要被标记,哪些数据需要被移除污点属性即是污点检查的工作。还可以对引起污点蔓延的操作进行精确定义,即污点的传播策略。
动态污点分析技术主要有三种实现方式。第一是对二进制文件的插桩。该方法将在程序运行时动态跟踪数据流向,记录污点信息传播路径,检测漏洞攻击。该方法有着相比于其他方法更大的运行开销,但是适用范围也将更广阔。动态污点分析模型TaintCheck所代表的一类二进制插桩动态监控信息的流动,可以准确的追踪数据的流向,包括动态链接库、系统调用等,但是也会导致一些问题,比如:运行开销过大,也缺少对控制流相关信息的追踪与判别。第二种是对源代码插桩,编译运行插桩之后的程序,在程序运行时动态追踪数据流,检测漏洞攻击。这种方法相较于其他种类的污点分析方法有着更小的运行开销,但是由于它针对源代码的特性,导致它将无法对闭源软件和第三方库进行监控,因此无法对针对第三方库漏洞的攻击进行检测,也无法对商业闭源软件进行漏洞攻击检测。第三种是硬件级的动态污点分析工具。最近的研究提出了一种新的基于硬件扩展方式的数据流跟踪方法。该方法在硬件级的电路实现上追踪数据流向,由于是电路扩展功能,使用该方法在检测漏洞攻击时并不会造成太大的运行开销,但也是因为该方法对硬件级实现提出了新的要求,所以并不适用于现存的许多系统。
发明内容
本发明主要目的之一在于提供一种抗隐式污点传播的动态污点检测方法,解决了现有的污点检测方法无法检测隐式污点传播的问题。
为达到上述目的,本发明提供了一种抗隐式污点传播的动态污点检测方法,包括以下步骤,
S1、将从外部获取的不可信数据标记为污点数据,并将所述污点数据存入内存中;
S2、采集在内存中被调用的污点数据,并根据污点标记策略对污点数据进行筛选、过滤得到相应的有效污点数据;
S3、捕获被测程序载入污点数据运行后的数据流信息,将有效污点数据按字节变异,并将变异后的污点数据作为模拟数据重新载入被测程序,再捕获隐式数据流信息;
S4、根据所捕获的数据流信息和隐式数据流信息进行对比,寻找数据流信息与隐式数据流信息之间的依赖关系。
本发明的工作原理及优点在于:
只要是从外部获取到的数据统统会被标记为污点数据,从而方便污点数据的源头进行监控。由于污点数据进入程序之后,将会因为被程序处理而导致值的传递,由于源头的污点数据是不可信的,因此经过各种运算得到的衍生数据依然是不可信的,也会被打上污点数据的标签。根据污点标记策略,过滤掉污染过度的部分,保留有效污点数据。将有效污点数据按字节变异,并重新载入被测程序,捕获隐式数据流信息,将隐式数据流信息与数据流信息进行对比,通过字节变异带来的差异来分析彼此间的依赖关系。
进一步,所述步骤S1中污点数据的标记具体包括以下步骤:
S101、根据配置文件的污点标记策略,建立起外部不可信数据与污点标记的一一映射关系。
分配污点标记信息数据结构方便污点标记的传播和污点信息回溯。
进一步,所述不可信数据为引起程序产生各类安全问题的数据,不可信数据的来源包括:键盘的输入、读写磁盘的输入、网络接口的输入和客户端Web参数。
不可信数据会引起程序产生各类安全问题,因此通过对信息输入的源头进行标记,能够使不可信数据经过各种运算得到的数据也能方便的打上标记。
进一步,所述步骤S2中进行筛选、过滤得到相应的有效污点数据具体包括以下步骤:
S201、使用四元组序列(P,T,x,c)表示漏洞位置,其中P代表源程序,x是输入数据,c是脆弱性条件,T是x在P上的执行路径;
S202、使用T(P,c)表示漏洞签名,即由输入x所获得的程序P上的执行路径为T,脆弱性条件c在执行路径T上被检查;
S203、如果T满足脆弱性条件,记作|T|=c;定义脆弱性语言Lp*c,描述对于程序P,输入x,产生执行路径满足脆弱性条件c;令∑*表示程序P的输入域,Lp*c={x∈∑*|T(P,c)=c},那么一个漏洞签名满足下列属性:
Figure BDA0002375590240000031
其中exploit代表满足脆弱性条件,产生漏洞;benign代表不满足脆弱性条件,不可以被利用。
通过漏洞签名方便判断污点数据是否为有效污点数据。
进一步,所述步骤S3中污点数据的变异具体包括以下步骤:
S301、捕获被测程序载入有效污点数据运行后的数据流信息;
S302、将有效污点数据按字符进行变异得到变异数据;
S303、将变异数据作为被测程序的模拟输入,并调用插桩工具对被测程序进行插桩;
S304、捕获被测程序载入污点数据运行后的隐式数据流信息,重复执行步骤S302,获取若干条隐式数据流信息。
通过变异来获取隐式数据流信息,。
进一步,所述插桩工具包括ATOM、Dynis、Valgrind、Pin、Nirvana和HDTrans。
通过对被测程序插桩,可以监测符号的流动路径、操作运算,从而方便收集污点数据路径约束条件。
进一步,所述步骤S4中数据间的依赖关系的求解包括以下步骤:
S401、将数据流信息与若干条隐式数据流信息进行比对,寻找数据流信息与隐式数据流信息之间的依赖关系;
S402、再根据依赖关系分析并获取含有外部输入类型信息的安全漏洞。
通过数据流信息与若干条隐式数据流信息的比对,方便找出数据流信息与隐式数据流信息之间的依赖关系,从而获取含有外部输入类型信息的安全漏洞,达到隐式污点传播无法检测的问题。
本发明主要目的之二在于提供一种抗隐式污点传播的动态污点检测系统,本系统应用上述方法,包括以下模块:
污点标记模块:用于将从外部获取的不可信数据标记为污点数据,并将所述污点数据存入内存中;
数据采集模块:用于采集在内存中被调用的污点数据,并根据污点标记策略对污点数据进行筛选、过滤得到相应的有效污点数据;
数据变异模块:用于捕获被测程序载入污点数据运行后的数据流信息,将有效污点数据按字节变异,并将变异后的污点数据作为模拟数据重新载入被测程序,再捕获隐式数据流信息;
对比标记模块:用于根据所捕获的数据流信息和隐式数据流信息进行对比,寻找数据流信息与隐式数据流信息之间的依赖关系,再根据依赖关系分析并获取含有外部输入类型信息的安全漏洞。
本发明的工作原理及优点在于:
只要是从外部获取到的数据统统会被标记为污点数据,从而方便污点数据的源头进行监控。由于污点数据进入程序之后,将会因为被程序处理而导致值的传递,由于源头的污点数据是不可信的,因此经过各种运算得到的衍生数据依然是不可信的,也会被打上污点数据的标签。根据污点标记策略,过滤掉污染过度的部分,保留有效污点数据。将有效污点数据按字节变异,并重新载入被测程序,捕获隐式数据流信息,将隐式数据流信息与数据流信息进行对比,通过字节变异带来的差异来分析彼此间的依赖关系。
进一步,所述不可信数据在标记为污点数据之前,所述系统还包括,
数据预处理模块:用于使用特定字符数组,以单个字符的形式预处理所有不可信数据。
通过预处理的方式方便污点数据的变异处理,从而方便获取依赖关系。
进一步,所述污点标记模块还包括以下子模块,
文件I/O数据标记子模块:用于在对文件I/O数据进行标记时,可以通过配置文件指定I/O数据的特定路径来对特定的I/O数据进行标记。
避免对其他来源的I/O数据进行污点标记。
附图说明
图1为现有简单编码攻击控制语句示例图;
图2为污点传播场景示例图;
图3为本发明实施例一种抗隐式污点传播的动态污点检测方法的流程图。
具体实施方式
下面通过具体实施方式进一步详细说明:
实施例
一种抗隐式污点传播的动态污点检测方法,基本如图3所示,主要包括四个步骤:
S1、将从外部获取的不可信数据标记为污点数据,并将所述污点数据存入内存中;不可信数据为引起程序产生各类安全问题的数据,不可信数据的来源包括:键盘的输入、读写磁盘的输入、网络接口的输入和客户端Web参数。从外部获取的不可信数据会被标记为污点数据,因此外部的不可信数据可以定义为污点数据的源数据,源数据进入程序之后,将会因为被程序处理而导致值的传递。因为源数据是不可信的,所以经过各种运算得到的衍生数据依然是不可信的也会被打上污点属性进行标记,都会被存储在内存中。
如图2所示,将两个不可信的源数据分别标记上污点标记#1、#2,箭头符号表示传播过程,箭头源代表源操作数,箭头尾代表目的操作数。随着程序的运行,污点数据将会向其他数据传播。用T集合代表污点数据集合。T为空则代表该数据为未标记的数据。可以看到,污点标记#1、#2随着程序的运行最终传播到了数据V4、V8。
步骤S1中污点数据的标记具体包括以下步骤:
S101、根据配置文件的污点标记策略,建立起外部不可信数据与污点标记的一一映射关系。分配污点标记信息数据结构用于污点标记的传播和污点信息回溯。
S2、采集在内存中被调用的污点数据,并根据污点标记策略对污点数据进行筛选、过滤得到相应的有效污点数据;
步骤S2中进行筛选、过滤得到相应的有效污点数据具体包括以下步骤:
S201、使用四元组序列(P,T,x,c)表示漏洞位置,其中P代表源程序,x是输入数据,c是脆弱性条件,T是x在P上的执行路径;
S202、使用T(P,c)表示漏洞签名,即由输入x所获得的程序P上的执行路径为T,脆弱性条件c在执行路径T上被检查;
S203、如果T满足脆弱性条件,记作|T|=c;定义脆弱性语言Lp*c,描述对于程序P,输入x,产生执行路径满足脆弱性条件c;令∑*表示程序P的输入域,Lp*c={x∈∑*|T(P,c)=c},那么一个漏洞签名满足下列属性:
Figure BDA0002375590240000061
其中exploit代表满足脆弱性条件,产生漏洞;benign代表不满足脆弱性条件,不可以被利用。通过漏洞签名能够方便判断的污点数据是否为有效污点数据。
S3、捕获被测程序载入污点数据运行后的数据流信息,将有效污点数据按字节变异,并将变异后的污点数据作为模拟数据重新载入被测程序,再捕获隐式数据流信息;
步骤S3中污点数据的变异具体包括以下步骤:
S301、捕获被测程序载入有效污点数据运行后的数据流信息;
S302、将有效污点数据按字符进行变异得到变异数据;
S303、将变异数据作为被测程序的模拟输入,并调用插桩工具对被测程序进行插桩;插桩工具包括ATOM、Dynis、Valgrind、Pin、Nirvana和HDTrans。本实施例中优选为Pin。
S304、捕获被测程序载入污点数据运行后的隐式数据流信息,重复执行步骤S302、步骤S303,获取若干条隐式数据流信息。步骤S302中变异的次数根据污点数据大小来设置。
S4、根据所捕获的数据流信息和隐式数据流信息进行对比,寻找数据流信息与隐式数据流信息之间的依赖关系。
步骤S4中数据间的依赖关系的求解具体包括以下步骤:
S401、将数据流信息与若干条隐式数据流信息进行比对,寻找数据流信息与隐式数据流信息之间的依赖关系;隐式数据流信息的数量与步骤S302中变异的次数对应。
S402、再根据依赖关系分析并获取含有外部输入类型信息的安全漏洞。
一种抗隐式污点传播的动态污点检测系统,本系统应用上述方法,具体包括以下模块:
污点标记模块:用于将从外部获取的不可信数据标记为污点数据,并将所述污点数据存入内存中;
在对不可信数据标记为污点数据之前,还需通过数据预处理模块对不可信数据进行预处理。
数据预处理模块:用于使用特定字符数组,以单个字符的形式预处理所有不可信数据。预处理包括接收和存储。在污点数据进行变异操作时,利用按位变异的方式对污点数据进行处理。
污点标记模块还包括以下子模块,
文件I/O数据标记子模块:用于在对文件I/O数据进行标记时,可以通过配置文件指定I/O数据的特定路径来对特定的I/O数据进行标记。
数据采集模块:用于采集在内存中被调用的污点数据,并根据污点标记策略对污点数据进行筛选、过滤得到相应的有效污点数据;
数据变异模块:用于捕获被测程序载入污点数据运行后的数据流信息,将有效污点数据按字节变异,并将变异后的污点数据作为模拟数据重新载入被测程序,再捕获隐式数据流信息;
对比标记模块:用于根据所捕获的数据流信息和隐式数据流信息进行对比,寻找数据流信息与隐式数据流信息之间的依赖关系,再根据依赖关系分析并获取含有外部输入类型信息的安全漏洞。
以上所述的仅是本发明的实施例,方案中公知的具体结构及特性等常识在此未作过多描述,所属领域普通技术人员知晓申请日或者优先权日之前发明所属技术领域所有的普通技术知识,能够获知该领域中所有的现有技术,并且具有应用该日期之前常规实验手段的能力,所属领域普通技术人员可以在本申请给出的启示下,结合自身能力完善并实施本方案,一些典型的公知结构或者公知方法不应当成为所属领域普通技术人员实施本申请的障碍。应当指出,对于本领域的技术人员来说,在不脱离本发明结构的前提下,还可以作出若干变形和改进,这些也应该视为本发明的保护范围,这些都不会影响本发明实施的效果和专利的实用性。本申请要求的保护范围应当以其权利要求的内容为准,说明书中的具体实施方式等记载可以用于解释权利要求的内容。

Claims (7)

1.一种抗隐式污点传播的动态污点检测方法,其特征在于:包括以下步骤,
S1、将从外部获取的不可信数据标记为污点数据,并将所述污点数据存入内存中;
S2、采集在内存中被调用的污点数据,并根据污点标记策略对污点数据进行筛选、过滤得到相应的有效污点数据;所述步骤S2中进行筛选、过滤得到相应的有效污点数据具体包括以下步骤:
S201、使用四元组序列(P,T,x,c)表示漏洞位置,其中P代表源程序,x是输入数据,c是脆弱性条件,T是x在P上的执行路径;
S202、使用T(P,c)表示漏洞签名,即由输入x所获得的程序P上的执行路径为T,脆弱性条件c在执行路径T上被检查;
S203、如果T满足脆弱性条件,记作|T|=c;定义脆弱性语言Lp*c,描述对于程序P,输入x,产生执行路径满足脆弱性条件c;令∑*表示程序P的输入域,Lp*c={x∈∑*|T(P,c)=c},那么一个漏洞签名满足下列属性:
Figure QLYQS_1
其中exploit代表满足脆弱性条件,产生漏洞;benign代表不满足脆弱性条件,不可以被利用;
S3、捕获被测程序载入污点数据运行后的数据流信息,将有效污点数据按字节变异,并将变异后的污点数据作为模拟数据重新载入被测程序,再捕获隐式数据流信息;所述步骤S3中污点数据的变异具体包括以下步骤:
S301、捕获被测程序载入有效污点数据运行后的数据流信息;
S302、将有效污点数据按字符进行变异得到变异数据;
S303、将变异数据作为被测程序的模拟输入,并调用插桩工具对被测程序进行插桩;
S304、捕获被测程序载入污点数据运行后的隐式数据流信息,重复执行步骤S302,获取若干条隐式数据流信息;
S4、根据所捕获的数据流信息和隐式数据流信息进行对比,寻找数据流信息与隐式数据流信息之间的依赖关系;所述步骤S4中数据间的依赖关系的求解包括以下步骤:
S401、将数据流信息与若干条隐式数据流信息进行比对,寻找数据流信息与隐式数据流信息之间的依赖关系;
S402、再根据依赖关系分析并获取含有外部输入类型信息的安全漏洞。
2.根据权利要求1所述的一种抗隐式污点传播的动态污点检测方法,其特征在于:所述步骤S1中污点数据的标记具体包括以下步骤:
S101、根据配置文件的污点标记策略,建立起外部不可信数据与污点标记的一一映射关系。
3.根据权利要求1所述的一种抗隐式污点传播的动态污点检测方法,其特征在于:所述不可信数据为引起程序产生各类安全问题的数据,不可信数据的来源包括:键盘的输入、读写磁盘的输入、网络接口的输入和客户端Web参数。
4.根据权利要求1所述的一种抗隐式污点传播的动态污点检测方法,其特征在于:所述插桩工具包括ATOM、Dynis、Valgrind、Pin、Nirvana和HDTrans。
5.一种抗隐式污点传播的动态污点检测系统,其特征在于:运用了权利要求1-4任一所述的方法,包括以下模块,
污点标记模块:用于将从外部获取的不可信数据标记为污点数据,并将所述污点数据存入内存中;
数据采集模块:用于采集在内存中被调用的污点数据,并根据污点标记策略对污点数据进行筛选、过滤得到相应的有效污点数据;
数据变异模块:用于捕获被测程序载入污点数据运行后的数据流信息,将有效污点数据按字节变异,并将变异后的污点数据作为模拟数据重新载入被测程序,再捕获隐式数据流信息;
对比标记模块:用于根据所捕获的数据流信息和隐式数据流信息进行对比,寻找数据流信息与隐式数据流信息之间的依赖关系,再根据依赖关系分析并获取含有外部输入类型信息的安全漏洞。
6.根据权利要求5所述的一种抗隐式污点传播的动态污点检测系统,其特征在于:所述不可信数据在标记为污点数据之前,所述系统还包括,
数据预处理模块:用于使用特定字符数组,以单个字符的形式预处理所有不可信数据。
7.根据权利要求6所述的一种抗隐式污点传播的动态污点检测系统,其特征在于:所述污点标记模块还包括以下子模块,
文件I/O数据标记子模块:用于在对文件I/O数据进行标记时,通过配置文件指定I/O数据的特定路径来对特定的I/O数据进行标记。
CN202010064646.1A 2020-01-20 2020-01-20 一种抗隐式污点传播的动态污点检测方法及系统 Active CN111240991B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010064646.1A CN111240991B (zh) 2020-01-20 2020-01-20 一种抗隐式污点传播的动态污点检测方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010064646.1A CN111240991B (zh) 2020-01-20 2020-01-20 一种抗隐式污点传播的动态污点检测方法及系统

Publications (2)

Publication Number Publication Date
CN111240991A CN111240991A (zh) 2020-06-05
CN111240991B true CN111240991B (zh) 2023-03-14

Family

ID=70876516

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010064646.1A Active CN111240991B (zh) 2020-01-20 2020-01-20 一种抗隐式污点传播的动态污点检测方法及系统

Country Status (1)

Country Link
CN (1) CN111240991B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112199274B (zh) * 2020-09-18 2022-05-03 北京大学 基于V8引擎的JavaScript动态污点跟踪方法及电子装置
CN114647853B (zh) * 2022-03-01 2023-06-23 深圳开源互联网安全技术有限公司 提高分布式应用程序漏洞检测准确性的方法及系统
CN115277062B (zh) * 2022-06-13 2024-06-14 深圳开源互联网安全技术有限公司 一种恶意攻击拦截方法、装置、设备及可读存储介质
CN115292723B (zh) * 2022-10-09 2023-03-24 支付宝(杭州)信息技术有限公司 一种检测侧信道漏洞的方法和装置
CN115859311A (zh) * 2023-02-17 2023-03-28 杭州孝道科技有限公司 基于屏蔽hook的污点分析方法、系统、存储介质及电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105787366A (zh) * 2016-02-16 2016-07-20 上海交通大学 基于组件关系的安卓软件可视化安全分析方法
CN107291617A (zh) * 2016-12-26 2017-10-24 中国科学院软件研究所 一种基于隐式污点传播的漏洞分析方法
WO2018079094A1 (ja) * 2016-10-28 2018-05-03 株式会社エヌ・ティ・ティ・データ 署名照合方法および署名照合システム
CN109522221A (zh) * 2018-10-26 2019-03-26 中国科学院信息工程研究所 一种提高模糊测试效率的方法和系统
CN110580222A (zh) * 2019-08-29 2019-12-17 清华大学 一种软件测试用例生成方法及系统
CN111723382A (zh) * 2020-07-24 2020-09-29 江西师范大学 动态Android程序漏洞验证方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9632911B2 (en) * 2013-02-08 2017-04-25 Red Hat, Inc. Stack trace clustering
US9767292B2 (en) * 2015-10-11 2017-09-19 Unexploitable Holdings Llc Systems and methods to identify security exploits by generating a type based self-assembling indirect control flow graph

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105787366A (zh) * 2016-02-16 2016-07-20 上海交通大学 基于组件关系的安卓软件可视化安全分析方法
WO2018079094A1 (ja) * 2016-10-28 2018-05-03 株式会社エヌ・ティ・ティ・データ 署名照合方法および署名照合システム
CN107291617A (zh) * 2016-12-26 2017-10-24 中国科学院软件研究所 一种基于隐式污点传播的漏洞分析方法
CN109522221A (zh) * 2018-10-26 2019-03-26 中国科学院信息工程研究所 一种提高模糊测试效率的方法和系统
CN110580222A (zh) * 2019-08-29 2019-12-17 清华大学 一种软件测试用例生成方法及系统
CN111723382A (zh) * 2020-07-24 2020-09-29 江西师范大学 动态Android程序漏洞验证方法和装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"A Kerberos security architecture for web services based instrumentation grids";Athanasios Moralis;《Future Generation Computer Systems》;20090731;第25卷(第7期);第804-818页 *
"PHP程序污点型漏洞静态检测方法";wolfshadow;《https://www.cnblogs.com/TomDwan/p/9891306.html》;20181101;第1-3页 *
"无线局域网环境下移动智能终端安全评估研究";陈国凯;《中国优秀硕士学位论文全文数据库 信息科技辑》;20160215(第02期);第I136-592页 *

Also Published As

Publication number Publication date
CN111240991A (zh) 2020-06-05

Similar Documents

Publication Publication Date Title
CN111240991B (zh) 一种抗隐式污点传播的动态污点检测方法及系统
CN108052825B (zh) 针对二进制可执行文件的模糊测试与符号执行相结合的漏洞检测系统
US7854002B2 (en) Pattern matching for spyware detection
CN109101815B (zh) 一种恶意软件检测方法及相关设备
AU2019357365B2 (en) Analysis function imparting device, analysis function imparting method, and analysis function imparting program
CN111695119B (zh) 一种基于细粒度静态污点分析与符号执行的web漏洞检测方法
CN101853200B (zh) 一种高效动态软件漏洞挖掘方法
US11170113B2 (en) Management of security vulnerabilities
CN106407809A (zh) 一种Linux平台恶意软件检测方法
KR101640479B1 (ko) 소스코드기반 소프트웨어 취약점 공격행위 분석시스템
CN111832026B (zh) 一种漏洞利用定位方法、系统、装置及介质
CN107193732A (zh) 一种基于路径比对的校验函数定位方法
CN102930207A (zh) 一种api日志监控方法及装置
Zuo Defense of Computer Network Viruses Based on Data Mining Technology.
Lin et al. A priority based path searching method for improving hybrid fuzzing
CN113849817B (zh) 一种JavaScript原型链污染漏洞的检测方法及装置
CN113536322A (zh) 一种基于对抗神经网络的智能合约可重入漏洞检测方法
CN114741700B (zh) 基于符号化污点分析的公共组件库漏洞可利用性分析方法及装置
CN108573148B (zh) 一种基于词法分析的混淆加密脚本识别方法
KR102275635B1 (ko) 함수 호출 패턴 분석을 통한 이상 검출 장치 및 방법
Meng et al. Detecting buffer boundary violations based on SVM
Kim et al. Source code analysis for static prediction of dynamic memory usage
CN111753295A (zh) 一种基于漏洞利用程序特征的漏洞利用程序检测方法
Jia et al. Machine learning for software vulnerability analysis: A survey
WO2023067663A1 (ja) 解析機能付与方法、解析機能付与装置及び解析機能付与プログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant