Movatterモバイル変換


[0]ホーム

URL:


CN103995782A - Taint analyzing method based on taint invariable set - Google Patents

Taint analyzing method based on taint invariable set
Download PDF

Info

Publication number
CN103995782A
CN103995782ACN201410269574.9ACN201410269574ACN103995782ACN 103995782 ACN103995782 ACN 103995782ACN 201410269574 ACN201410269574 ACN 201410269574ACN 103995782 ACN103995782 ACN 103995782A
Authority
CN
China
Prior art keywords
taint
stain
data
input
invariable
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.)
Granted
Application number
CN201410269574.9A
Other languages
Chinese (zh)
Other versions
CN103995782B (en
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.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
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 University of Electronic Science and Technology of ChinafiledCriticalUniversity of Electronic Science and Technology of China
Priority to CN201410269574.9ApriorityCriticalpatent/CN103995782B/en
Publication of CN103995782ApublicationCriticalpatent/CN103995782A/en
Application grantedgrantedCritical
Publication of CN103995782BpublicationCriticalpatent/CN103995782B/en
Expired - Fee Relatedlegal-statusCriticalCurrent
Anticipated expirationlegal-statusCritical

Links

Landscapes

Abstract

A taint analyzing method based on a taint invariable set includes the following steps of firstly, obtaining original taint data original_set through the taint analyzing method; secondly, obtaining a taint invariable set invariable_set; thirdly, obtaining a final taint data taint_set, wherein the final taint data taint_set is equal to the difference between the original taint data original_set and the taint invariable set invariable_set; fourthly, setting up a taint data structure; fifthly, tracking taint spreading, and putting forward a light-weight taint spreading tracking method; sixthly, tracking a taint pointer, wherein in order to track the taint pointer, the target operation number is marked with taints as well when the addresses of indirection addressing or registers are taint data; seventhly, setting a bug detection rule, directly conducting pile insertion on a memory function, and detecting whether function parameters are marked with taints or not before the memory function is called, wherein the bug of the memory function is detected if yes.

Description

A kind of stain analytical approach based on stain invariant set
Technical field
The stain analytical approach based on stain invariant set that the present invention proposes is analyzed the problem of high rate of false alarm for solving traditional stain, belong to security of computer software field tests.
Background technology
Code audit, software verification and software test are all the gordian techniquies that ensures software reliability and security, and software test is the most general technology of verifying software quality.High-quality software product demand, impels software test in software development cycle, to occupy more and more consequence.Investigation demonstration in the recent period, software test accounts for the ratio of software development cost and has brought up to 80% from 50%.Stain analytical technology was suggested in 1998, after 2005, became study hotspot, was because it has multiple advantage and application prospect widely, comprising: software protection, software defect are found and software defect analysis etc.
Stain analytical technology is excavated software vulnerability by stain source, location (taint source), tracking tainting (taint propagation) and Hole Detection rule.Basic thought is to be stain by the data markers of possibility victim direct control, and the data source that is regarded as insincere (stain) generally includes: disk file, network service, keyboard and mouse operation etc.Follow the tracks of the propagation condition of stain data, in the time that stain data dissemination arrives key operation, leak just detected.This detection side's ratio juris is: stain data can only be used as non-control purposes, and controls data, for example: code pointer, script, order etc. should be all non-stain data.In essence, stain analysis is a kind of fine-grained information flow tracking technique, can follow the tracks of incredible information flow direction.
External scholar has launched deep research and has obtained some achievements for stain analytical technology.Lam and Chiueh have proposed to carry out monitor code based on the method for stain mark and tracking, and the method has two shortcomings: one is that applicability is low, because need to recompilate code; Another is that stain analysis is not comprehensive, is mainly due to the data processing of not supporting to control stream.Newsome and Song have proposed to detect by dynamic dataflow analytical technology the method for buffer-overflow vulnerability, and the method does not support to control the data processing of stream yet.The development of stain analytical technology is mainly divided into two stages: within 2005-2008, mainly concentrate on the research of stain technology itself, occurred improving the TaintCheck of stain analysis theories, the instruments such as LIFT and Dytan this period; After 2008, focus concentrates on the fusion of stain analytical approach and other technologies, and analysis tool comparatively famous in this one-phase has buzzfuzz etc.
Tainting technology can be divided into two classes at present: one is static analysis (static analysis), and another is performance analysis (dynamic analysis).Static stain analysis is in tainting Procedure embedding type, not need executive routine, and Livshits etc. have realized the static treatment of contamination data under Java; Shankar etc. have proposed a kind of detection method for format string leak in c program, the method inefficiency and there will be a large amount of wrong reports; The extended version Oink of the Cqual that Berkeley University develops at the Cqual of the fragility mainly for detection of C language of exploitation in 2002 and in 2006 is that stream is insensitive in most situation; ARCHER and IPSSA adopt path-sensitive analytical approach to reduce the accuracy of detection of model.Dynamically in the time that program is carried out, whether the instant data that detect are from outside untrusted input in stain analysis, and the method exists and faces path blast, and " stain pattern (taint model) " security mechanism realized in perl script language; Newsome etc. have used shadow EMS memory (shadow memory) technology.2009, the Vijay Ganesh of MIT etc. proposed the white box fuzzing test that stain tracking technique and fuzzing measuring technology are combined first, still needed to rely on the dependence of source code.The propositions such as Tielei Wang in 2010 utilize the method for stain information generating test use case under black box, and the method has improved code coverage.
Dynamically stain analysis is one of gordian technique of software analysis, is often used in and excavates software vulnerability, analysis software behavior, generates leak feature, privacy information protection etc.Owing to can carrying out fine-grained information flow tracking, dynamically stain analysis can be excavated dissimilar software vulnerability, for example: internal memory destruction, format string, SQL inject and order is injected, cross-site scripting attack.Wherein, tainting has directly affected the effect that whole stain is analyzed.For example: if in communication process mark too much without the data of mark, can affect the speed that stain is analyzed, also can bring too high rate of false alarm simultaneously; Contrary, if missed part and should be labeled as the data of stain, can bring and fail to report, its direct result is cannot find software defect, cannot find malicious attack etc.
The TaintCheck that the people such as Newsome developed in 2005, except detecting attack, can also produce attack signature code.The Dytan system that the people such as Clause realize, except following the tracks of the tainting being caused by data stream, can also be followed the tracks of the tainting being caused by control stream.Yin and Song have proposed TEMU system, and it is based on the virtual machine QEMU that increases income.TEMU is the dynamic stain analytic system of a total system (whole-system), its the most applicable tainting to low level (low-level) is followed the tracks of, for example disk file, kernel code, network service, but this system-wide stain analysis meeting causes more serious resource overhead.
The DTA++ that the people such as Kang propose develops based on TEMU, flows owing to only having considered that part is controlled, and controls so reduced the rate of false alarm that stream stain is analyzed.The STILL that the people such as Wang propose is based on static stain analytical technology, and this is the stain analytical technology of the tested program of a kind of unactual execution.Dynamically stain analysis is also applied to the protection to web application.Halfond proposes forward (positive) stain analytical technology and protects web application.So-called forward stain refers to believable input, and relative, negative sense (negative) stain refers to suspicious input.Other all stain analyses are all the negative sense stain analytical technologies adopting.Python program also provides stain analytical model.
Some dynamic stain analytic systems directly build on hardware foundation, for example: LIFT, the dynamic stain analytical technology of this hardware level can greatly improve system running speed.But the dynamic stain analysis of hardware level can only detect low-level software vulnerability conventionally, for example buffer overflow, and the technological expansion of hardware level is also very poor.In addition, stain analysis may operate in source code level or middle expression-form level.For example: the people such as Xu have proposed a source code level stain analysis software based on CIL; Chin and Wagner have realized the stain analysis software based on JVM bytecode pitching pile for java applet.
The analysis of tradition stain refers to the analysis of data stream stain, and stain propagates into destination operand from source operand, for example: y=x+5, before this statement is carried out, if x is stain data, this statement is carried out rear y and is also marked as stain data.Existing research is found: traditional stain analysis can produce and fail to report in some cases, and this causes by controlling stream substantially, control stream and also can propagate stain, but data-flow analysis cannot capture control stream tainting.
By analyzing existing documents and materials, we find, existing technology is mostly the stain analysis based on controlling stream, not the stain analysis of supported data stream.At present also do not have research institution to carry out systematic research to the wrong report problem of stain analysis, but in fact, wrong report also can bring serious problem.In the time that rate of false alarm is high, researchist or analyst will expend a large amount of energy to go to distinguish which stain data be real, and which stain data is false.In the time that the scale of analyzed software strengthens, the wrong report problem that stain is analyzed will be serious all the more.Even can say so, the too high stain analytical technology of rate of false alarm is difficult to apply in practice.For the problem of failing to report of traditional stain analysis, current more existing researched and proposed some solutions.The present invention does not study failing to report of traditional stain analysis, but the wrong report of analyzing for stain launches research.
Wrong report problem with regard to traditional stain analysis conducts a research, and proposes new stain marking convention, should mark stain invariant set.Its core methed is found stain invariant set exactly, analyzes this result and filters out stain invariant set from traditional stain, reaches the effect that reduces rate of false alarm.
Summary of the invention
This programme is studied mainly for the high rate of false alarm problem of traditional stain analytical technology, intends proposing a kind of stain analytical approach based on stain invariant set, reduces the high rate of false alarm of stain analytical technology.The concrete technical problems relating to comprises following two aspects:
(1) redefine stain marking convention, redefine which variable (internal memory or register) and should be marked as stain, and which variable should not be marked as stain.According to traditional definition, as long as source operand is stain, destination operand just should be marked as stain so, and this is a kind of typical data-flow analysis method.For example: y=x+5, when x is stain data, it is also stain data that this statement executes rear y.This has just brought wrong report problems a large amount of in reality, such as: y=x-x, y=x/x, y=x (XOR) x etc., the value of y is not relevant to x, therefore, if y is labeled as to stain, for the follow-up various software analysis technologies based on stain analysis, all can bring disadvantageous result.Therefore, the determine problem definition of stain marking convention of quasi-solution of the present invention, proposes stain tag definitions more accurately.
(2) find stain invariant set.Stain invariant set is the set of stain invariant, and stain invariant refers to and calculated by stain data, the impact of a data but its value is not got dirty.Example as above: y=x-x, y=x/x, y=x(XOR) x etc., x is stain data, y is exactly stain invariant., find stain invariant and can in compiling, automatically be processed by compiler, because compiler can be y=0, y=1, y=0 etc. by these example Automatic Optimal simply in example at these.But this static mode of Compiler Optimization can only be for simple calculation expression, if y=f (x), the f is here a complicated arithmetic expression, and static method just cannot be determined the value of f (x), naturally also cannot find stain invariant set.The present invention intends taking a kind of dynamic method to find stain invariant set, reduces the rate of false alarm that stain is analyzed.
The present invention is by the following technical solutions to achieve these goals:
A stain analytical approach based on stain invariant set, comprises the steps:
Step 1: by stain analytical approach, obtain original stain data original_set;
Step 2: obtain stain invariant set invariable_set;
Step 2.1: carrying out input is the program p of input, obtains all variablees of program p and the set var_set of value thereof, wherein input refers to the assignment set of the input that outside is accepted;
Step 2.2: loop initialization number of times is 0;
Step 2.3: in the time that cycle index is less than threshold, enter step 2.4; Otherwise enter step 3;
Step 2.4: change input and obtain new input new_input;
Step 2.5: carrying out input is the program p of new-_input, obtains all variablees of program p and the set res_set of value thereof;
Step 2.6: relatively gather the item that var_set is different from set res_set, productive set diff_set;
Step 2.7: filter out set diff_set var_set from set, be retained in variable under different input conditions and do not have the set of vicissitudinous variable and value thereof, enter step 2.3;
Step 3: obtain final stain data taint_set, final stain data taint_set=original stain data original_set-stain invariant set invariable_set;
Step 4: formulate stain data structure;
Step 5: follow the tracks of tainting;
Step 6: follow the tracks of stain pointer, in order to realize the tracking to stain pointer, in the time that the address of indirect addressing or register are stain data, destination operand is also marked as stain;
Step 7: formulate Hole Detection rule, directly internally store function carries out pitching pile, and before interior store function is called, detection function parameter, whether by stain mark, if so, has detected interior store function leak.
Step 5 has been used a kind of tainting tracking of lightweight, specifically comprises the steps:
Step 1: initialization has the ephemeral data structure of memory address and width information, register, instruction operation code, instruction type;
Step 2: search all registers that are read and memory address in ephemeral data structure;
Step 3: all registers that are read and memory address in inquiry stain data structure;
Step 4: judge whether the data of storing in all registers that are read and memory address are stain data, enter step 5, otherwise enter step 6 if not stain data;
Step 5: delete those and be recorded in the register that is modified in ephemeral data structure and the stain information of memory address;
Step 6: those registers of being modified and the memory address of label record in ephemeral data structure is stain.
Because the present invention has adopted above technical scheme, so possess following beneficial effect:
The present invention reduces the rate of false alarm problem that traditional stain is analyzed, and is the improvement of carrying out on existing symbol carries into execution a plan basis.The present invention proposes new stain marking convention, should mark stain invariant set, and its core methed is found stain invariant set exactly, analyzes this result and filters out stain invariant set from traditional stain, reaches the effect that reduces rate of false alarm.Compared with other optimisation technique, the present invention has very significantly effect.One, by identification stain invariant set, reduces stain and analyzes rate of false alarm; And in existing stain analysis and research, also do not have research institution to propose the effective ways for stain analysis wrong report.On the other hand, high-level efficiency, the inventive method identification stain invariant set, adopts variation input, and the actual mode of carrying out, to low in resources consumption.Therefore, this method can find stain invariant set at short notice.
Brief description of the drawings
Fig. 1 is the process flow diagram of the stain analytical approach based on stain invariant set of the present invention;
Fig. 2 is the process flow diagram of the method for obtaining stain invariant set of the present invention;
Fig. 3 is the process flow diagram of the tainting tracking of lightweight of the present invention.
Embodiment
Utilize new stain tag definitions to find stain invariant, thereby obtain stain invariant set.So-called stain invariant, is calculated and is got by stain data, but should not be labeled as the variable of stain according to new definition.Such as the variable y of y=x/x.The core of this method filters out stain invariant set exactly from traditional stain data, thereby reaches the effect that reduces rate of false alarm.Stain analytical algorithm based on stain invariant set is as follows:
begin:
1 original_set = getTaintset(p, input);
2 invariable_set = getNonTaintset(p, input);
3 taint_set = original_set-invariable_set;
end:
Algorithm Analysis: statement 1, by traditional stain analytical approach, obtains original stain data original_set; Statement 2, obtains stain invariant set invariable_set; Statement 3, obtains final stain data taint_set.
Obtain original stain data, it is innovative point of the present invention that the present invention adopts prior art to obtain stain invariant set.The algorithm that obtains stain invariant set is as follows:
begin:
1 var_set = execute(p, input);
2 num = 0;
3 while(num< threshold);
{
4 new_input = mutate(input);
5 res_set = execute(p, new_input);
6 diff_set = getDiff(var_set, res_set);
7 var_set-= diff_set;
8 num ++;
}
end
Algorithm Analysis: statement 1, executive routine p, input is input, obtains the set var_set of all variablees and value thereof; Statement 2, loop initialization number of times is 0; Statement 3, in the time that cycle index is less than threshold, enters loop body; Statement 4, changes input and obtains new input new_input; Statement 5, executive routine p, input is new-_input, obtains the set res_set of all variablees and value thereof; Statement 6, more then obtains var_set, the item that res_set is different, productive set diff_set; Statement 7 filters out diff_set from var_set, retains those values and does not have vicissitudinous variable; Statement 8, increases progressively cycle index.
Embodiment 1
Step 1: by traditional stain analytical approach, obtain original stain data original_set.Wherein traditional stain analytical approach is to carry out mark for common stain source, taking disk file as example.The API providing by Pin carries out pitching pile to operating system function, as: open, read, mmap etc., because the operation of disk file is generally passed through to these functions.It should be noted that, different operating system, needs the function difference of pitching pile, and taking Windows as example, the function that needs pitching pile is OpenFile, ReadFile etc.
Step 2: obtain stain invariant set invariable_set.
Step 2.1: carrying out input is the program p of input, obtains the set var_set of all variablees and value thereof, wherein input refers to the assignment set of the input that outside is accepted;
Step 2.2: loop initialization number of times is 0;
Step 2.3: in the time that cycle index is less than threshold, enter step 2.4; Otherwise enter step 3;
Step 2.4: change input and obtain new input new_input;
Step 2.5: carrying out input is the program p of new-_input, obtains the set res_set of all variablees and value thereof;
Step 2.6: relatively gather the item that var_set is different from set res_set, productive set diff_set;
Step 2.7: filter out set diff_set var_set from set, be retained in variable under different input conditions and do not have the set of vicissitudinous variable and value thereof, enter step 2.3;
Step 3: obtain final stain data taint_set:taint_set=original_set-invariable_set.
Step 4: formulate stain data structure.Stain data read and amendment is operation the most frequently during stain is analyzed, stain data read and refer to the stain information that reads an address or register, and stain data modification is to show an address or register is composed with new stain information.For example, if need to store many stains mark (multi taint mark) that more stain information can adopt Dytan to propose: which stain source is data belong to.If do not need so many stain information, can adopt the modal analysis granularity of stain analytical technology---the analysis granularity of byte level of binary level, only, by 1 stain information of storing each byte, 0 represents it is not stain, 1 expression is stain.
Step 5: follow the tracks of tainting.Stain information can be carried out and propagate along with instruction, simply: stain information can propagate into destination operand from source operand.For example: instruction moveax, ecx, before execution, register ecx is stain data, carries out late register eax and also should be marked as stain data.Can be expression-form in the middle of easy to handle more by x86 instruction transformation, in the middle of these, in fact expression-forms be similar to reduced instruction set computer, only have a small amount of statement type.Also can adopt the tainting tracking of lightweight, and expression-form in the middle of not relying on, directly to x86, instruction is analyzed.
Step 6: follow the tracks of stain pointer.Step 5 can be processed the tainting of explicit (explicit), in addition, the tainting of the implicit expression being caused by stain pointer (implicit) is followed the tracks of.For example: instruction moveax, [ecx+0x20], in the time that register ecx is stain data, register eax also should be marked as stain after execution.
Follow the tracks of the tainting being caused by stain pointer extremely important, because actual software is often used stain pointer to carry out table lookup operation.If do not follow the tracks of stain pointer, probably cause wrong report.In order to realize the tracking to stain pointer, the indirect addressing mode of all instructions is carried out to special processing.Particularly, in the time that the address of indirect addressing or register are stain data, destination operand is also marked as stain.
Step 7: formulate Hole Detection rule.If for low-level software vulnerability, typical way is to detect whether to have jump instruction by stain mark, if so, leak detected.The principle of this mode be think leakyly all can cause the transfer of being flowed by attacker control, but in fact exist many attacks can't reprogramming control stream, for example, for the attack of function parameter.If for high level software vulnerability, directly internally store function carries out pitching pile, and before interior store function is called, detection function parameter, whether by stain mark, if so, has detected interior store function leak.The interior store function of monitoring comprises memory allocation function, as: malloc, alloc, realloc, internal memory operation function, as: memcpy, memmove, string operation function, as: strncpy, strcat.

Claims (2)

Translated fromChinese
1.一种基于污点不变集的污点分析方法,其特征在于包括如下步骤:1. a stain analysis method based on stain invariant set, is characterized in that comprising the steps:步骤1:通过污点分析方法,获得原始污点数据original_set;Step 1: Obtain the original taint data original_set through the taint analysis method;步骤2:获得污点不变集invariable_set;Step 2: Obtain the taint invariant set invariable_set;步骤2.1:执行输入是input的程序p,得到程序p的所有变量及其值的集合var_set;Step 2.1: Execute the program p whose input is input, and obtain the set var_set of all variables and their values of the program p;步骤2.2:初始化循环次数为0;Step 2.2: Initialize the number of cycles to 0;步骤2.3:当循环次数小于threshold时,进入步骤2.4;否则进入步骤3;Step 2.3: When the number of cycles is less than the threshold, go to step 2.4; otherwise go to step 3;步骤2.4:改变输入获得新的输入new_input;Step 2.4: Change the input to obtain a new input new_input;步骤2.5:执行输入是new-_input的程序p,得到程序p的所有变量及其值的集合res_set;Step 2.5: Execute the program p whose input is new-_input, and obtain the set res_set of all variables and their values of the program p;步骤2.6:比较集合var_set与集合res_set不同的项,产生集合diff_set;Step 2.6: Compare the different items of the set var_set and the set res_set, and generate the set diff_set;步骤2.7:从集合var_set中过滤掉集合diff_set,即保留在不同输入情况下变量没有变化的变量及其值的集合,进入步骤2.3;Step 2.7: Filter out the set diff_set from the set var_set, that is, keep the set of variables and their values that do not change under different input conditions, and enter step 2.3;步骤3:获得最终污点数据taint_set,最终污点数据taint_set = 原始污点数据original_set-污点不变集invariable_set;Step 3: Obtain the final taint data taint_set, final taint data taint_set = original taint data original_set - taint invariable set invariable_set;步骤4:制定污点数据结构;Step 4: Formulate the taint data structure;步骤5:跟踪污点传播;Step 5: Track taint propagation;步骤6:跟踪污点指针,为了实现对污点指针的跟踪,当间接寻址的地址或者寄存器是污点数据时,目的操作数也被标记为污点;Step 6: Track the taint pointer. In order to track the taint pointer, when the indirect address or register is taint data, the destination operand is also marked as taint;步骤7:制定漏洞检测规则,直接对内存函数进行插桩,在内存函数被调用前,检测函数参数是否被污点标记,如果是,则检测到了内存函数漏洞。Step 7: Formulate the vulnerability detection rules, directly insert the memory function, and check whether the function parameters are tainted before the memory function is called. If so, the memory function vulnerability is detected.2.根据权利要求1所述的一种基于污点不变集的污点分析方法,其特征在于:步骤5使用了一种轻量级的污点传播跟踪方法,具体包括如下步骤:2. A kind of taint analysis method based on taint invariant set according to claim 1, is characterized in that: step 5 has used a kind of lightweight taint propagation tracking method, specifically comprises the following steps:步骤1:初始化存有内存地址和宽度信息、寄存器、指令操作码、指令类型的临时数据结构;Step 1: Initialize a temporary data structure that stores memory address and width information, registers, instruction opcodes, and instruction types;步骤2:查找临时数据结构中所有被读取的寄存器和内存地址; Step 2: Find all read registers and memory addresses in the temporary data structure;步骤3:查询污点数据结构中所有被读取的寄存器和内存地址;Step 3: Query all read registers and memory addresses in the taint data structure;步骤4:判断所有被读取的寄存器和内存地址中存储的数据是否是污点数据,如果不是污点数据则进入步骤5,否则进入步骤6;Step 4: Judging whether the data stored in all read registers and memory addresses is tainted data, if not, go to step 5, otherwise go to step 6;步骤5:删除那些记录在临时数据结构里被修改的寄存器和内存地址的污点信息;Step 5: delete the taint information of the modified registers and memory addresses recorded in the temporary data structure;步骤6:标记记录在临时数据结构里的那些被修改的寄存器和内存地址为污点。Step 6: mark those modified registers and memory addresses recorded in the temporary data structure as stains.
CN201410269574.9A2014-06-172014-06-17A kind of stain based on stain invariant set analyzes methodExpired - Fee RelatedCN103995782B (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
CN201410269574.9ACN103995782B (en)2014-06-172014-06-17A kind of stain based on stain invariant set analyzes method

Applications Claiming Priority (1)

Application NumberPriority DateFiling DateTitle
CN201410269574.9ACN103995782B (en)2014-06-172014-06-17A kind of stain based on stain invariant set analyzes method

Publications (2)

Publication NumberPublication Date
CN103995782Atrue CN103995782A (en)2014-08-20
CN103995782B CN103995782B (en)2016-06-22

Family

ID=51309954

Family Applications (1)

Application NumberTitlePriority DateFiling Date
CN201410269574.9AExpired - Fee RelatedCN103995782B (en)2014-06-172014-06-17A kind of stain based on stain invariant set analyzes method

Country Status (1)

CountryLink
CN (1)CN103995782B (en)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN105791261A (en)*2015-12-282016-07-20华为技术有限公司 A detection method and detection device for cross-site scripting attack
CN105827644A (en)*2016-05-172016-08-03努比亚技术有限公司Method and terminal for processing cipher information
CN106326103A (en)*2015-07-062017-01-11阿里巴巴集团控股有限公司Method and apparatus used for detecting vulnerability of to-be-detected application
CN106919831A (en)*2015-12-252017-07-04阿里巴巴集团控股有限公司The method and apparatus that stain is followed the trail of
CN107038378A (en)*2016-11-142017-08-11平安科技(深圳)有限公司Application software security flaw detection method and system
CN107491387A (en)*2017-07-182017-12-19中国人民解放军信息工程大学A kind of pass point of documentor and inspection independent positioning method and system
CN108664790A (en)*2018-05-142018-10-16西北工业大学A kind of multiple-object information stream tracking towards security breaches detection
CN109165507A (en)*2018-07-092019-01-08深圳开源互联网安全技术有限公司Cross-site scripting attack leak detection method, device and terminal device
CN109711159A (en)*2018-11-262019-05-03北京计算机技术及应用研究所A kind of IP kernel rtl code security flaw detection method based on information flow
CN110661804A (en)*2019-09-292020-01-07南京邮电大学Stain analysis vulnerability detection method for firewall
CN110941552A (en)*2019-11-202020-03-31广州大学 A memory analysis method and device based on dynamic taint analysis
CN111062031A (en)*2019-10-312020-04-24国家电网有限公司 Buffer overflow analysis method and device based on data flow analysis
CN111737150A (en)*2020-07-242020-10-02江西师范大学 Taint analysis and verification method and device for Java EE program SQLIA vulnerability
CN113220525A (en)*2021-04-282021-08-06杭州孝道科技有限公司Cross-application dynamic taint tracking method
CN113420298A (en)*2021-05-262021-09-21杭州孝道科技有限公司PHP Web application program vulnerability detection method based on PHP extension and storage medium thereof
CN115357893A (en)*2022-07-042022-11-18深圳开源互联网安全技术有限公司 Application program vulnerability detection method and system based on data flow tracking
CN115357900A (en)*2022-07-202022-11-18深圳开源互联网安全技术有限公司 Method and system for improving storage vulnerability detection efficiency
CN115617410A (en)*2022-11-012023-01-17清华大学 Drive interface identification method, device, equipment and storage medium

Citations (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN102306098A (en)*2011-08-182012-01-04电子科技大学Implicit taint propagation system and scheme thereof

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN102306098A (en)*2011-08-182012-01-04电子科技大学Implicit taint propagation system and scheme thereof

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
JAMES NEWSOME,DAWN SONG: "Dynamic Taint Analysis for Automatic Detection,Analysis, and Signature Generation of Exploits on Commodity Software", 《ELECTRICAL AND COMPUTER ENGINEERING COMMONS》*
刘智,张小松: "一种基于污点分析的文件型软件漏洞发现方法", 《小型微型计算机系统》*
刘杰 等: "污点分析中的隐式污染检测方法", 《计算机工程》*

Cited By (24)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
CN106326103B (en)*2015-07-062019-01-04阿里巴巴集团控股有限公司For detecting the method and device of the loophole of application to be detected
CN106326103A (en)*2015-07-062017-01-11阿里巴巴集团控股有限公司Method and apparatus used for detecting vulnerability of to-be-detected application
CN106919831A (en)*2015-12-252017-07-04阿里巴巴集团控股有限公司The method and apparatus that stain is followed the trail of
CN105791261A (en)*2015-12-282016-07-20华为技术有限公司 A detection method and detection device for cross-site scripting attack
CN105827644A (en)*2016-05-172016-08-03努比亚技术有限公司Method and terminal for processing cipher information
CN107038378B (en)*2016-11-142018-06-26平安科技(深圳)有限公司Application software security flaw detection method and system
CN107038378A (en)*2016-11-142017-08-11平安科技(深圳)有限公司Application software security flaw detection method and system
CN107491387A (en)*2017-07-182017-12-19中国人民解放军信息工程大学A kind of pass point of documentor and inspection independent positioning method and system
CN108664790A (en)*2018-05-142018-10-16西北工业大学A kind of multiple-object information stream tracking towards security breaches detection
CN109165507A (en)*2018-07-092019-01-08深圳开源互联网安全技术有限公司Cross-site scripting attack leak detection method, device and terminal device
CN109711159A (en)*2018-11-262019-05-03北京计算机技术及应用研究所A kind of IP kernel rtl code security flaw detection method based on information flow
CN110661804B (en)*2019-09-292021-12-31南京邮电大学Stain analysis vulnerability detection method for firewall
CN110661804A (en)*2019-09-292020-01-07南京邮电大学Stain analysis vulnerability detection method for firewall
CN111062031A (en)*2019-10-312020-04-24国家电网有限公司 Buffer overflow analysis method and device based on data flow analysis
CN110941552A (en)*2019-11-202020-03-31广州大学 A memory analysis method and device based on dynamic taint analysis
CN110941552B (en)*2019-11-202023-07-07广州大学 A memory analysis method and device based on dynamic taint analysis
CN111737150A (en)*2020-07-242020-10-02江西师范大学 Taint analysis and verification method and device for Java EE program SQLIA vulnerability
CN111737150B (en)*2020-07-242023-09-15江西师范大学 Taint analysis and verification methods and devices for SQLIA vulnerabilities in Java EE programs
CN113220525A (en)*2021-04-282021-08-06杭州孝道科技有限公司Cross-application dynamic taint tracking method
CN113420298A (en)*2021-05-262021-09-21杭州孝道科技有限公司PHP Web application program vulnerability detection method based on PHP extension and storage medium thereof
CN115357893A (en)*2022-07-042022-11-18深圳开源互联网安全技术有限公司 Application program vulnerability detection method and system based on data flow tracking
CN115357900A (en)*2022-07-202022-11-18深圳开源互联网安全技术有限公司 Method and system for improving storage vulnerability detection efficiency
CN115617410A (en)*2022-11-012023-01-17清华大学 Drive interface identification method, device, equipment and storage medium
CN115617410B (en)*2022-11-012023-09-19清华大学Drive interface identification method, device, equipment and storage medium

Also Published As

Publication numberPublication date
CN103995782B (en)2016-06-22

Similar Documents

PublicationPublication DateTitle
CN103995782A (en)Taint analyzing method based on taint invariable set
CN109002721B (en) A method of mining and analyzing information security vulnerabilities
Alam et al.DroidNative: Automating and optimizing detection of Android native code malware variants
CN110443045B (en)Fuzzy test case generation method based on machine learning method
Pawlowski et al.MARX: Uncovering Class Hierarchies in C++ Programs.
CN105808430B (en)A kind of multi-semantic meaning dynamic stain analysis method
Zhang et al.Combining static and dynamic analysis to discover software vulnerabilities
CN106156623A (en)Based on the SQLIA defence method being intended to
CN107526970A (en)Method for detecting runtime program bugs based on dynamic binary platform
Wressnegger et al.Comprehensive analysis and detection of flash-based malware
Liao et al.Smartstate: Detecting state-reverting vulnerabilities in smart contracts via fine-grained state-dependency analysis
Kim et al.Dynodet: Detecting dynamic obfuscation in malware
CN109871681A (en) Android malware detection method for dynamic code loading based on hybrid analysis
CN102184360A (en)Information flow safety monitoring method applied to embedded processor
Zhang et al.Hardware-based detection of spectre attacks: A machine learning approach
Qiu et al.A framework for understanding dynamic anti-analysis defenses
Canella et al.Sfip: Coarse-grained syscall-flow-integrity protection in modern systems
Pék et al.Membrane: a posteriori detection of malicious code loading by memory paging analysis
CN110727598A (en) Binary software vulnerability detection system and method based on dynamic taint tracking
Borders et al.Spector: Automatically analyzing shell code
Jung et al.Value-based constraint control flow integrity
Zhu et al.Dytaint: The implementation of a novel lightweight 3-state dynamic taint analysis framework for x86 binary programs
CN108073817A (en)A kind of offline heap overflow bug excavation method based on active construction
Zhang et al.SmartReco: Detecting read-only reentrancy via fine-grained cross-DApp analysis
Youssef et al.Tracing Software Exploitation

Legal Events

DateCodeTitleDescription
C06Publication
PB01Publication
C10Entry into substantive examination
SE01Entry into force of request for substantive examination
C14Grant of patent or utility model
GR01Patent grant
CF01Termination of patent right due to non-payment of annual fee
CF01Termination of patent right due to non-payment of annual fee

Granted publication date:20160622


[8]ページ先頭

©2009-2025 Movatter.jp