Font Size: a A A

Research On Secure And Efficient Automatic Program Repair Methods

Posted on:2021-02-06Degree:MasterType:Thesis
Country:ChinaCandidate:Y M HuangFull Text:PDF
GTID:2428330647960122Subject:Software engineering
Abstract/Summary:PDF Full Text Request
Due to unclear requirements,algorithmic errors,and insufficient developer experience,there are unavoidable known or unknown defects in software which affect the software quality.At present,the software is mainly maintained by manpower in industry to reduce the software defects caused by software errors.However,the software maintenance conducted by manpower wastes a lot of labor and time costs.As a result,Automatic Program Repair(APR)has gradually become the focus of researchers.Nevertheless,the existing APR methods have hidden safety hazards in the process of defect repair,and the correct rate of defect repair in the existing methods is low.In order to solve the problems in the current researches,this thesis focuses on the security and efficiency of APR,and the main research contents are as follows.? This thesis points out two scenarios,namely tainted patch sources and error test suites,which may lead to security risks in the APR-based software defect fix.Moreover,this thesis proposes the corresponding solutions,namely the patch verification schema and the test suite verification schema,respectively. Experimental results demonstrate that the patch verification scheme can enable ARP to obtain a more secure patch,and the test suite verification scheme can accurately locate the error test cases in the test suite with a false positive rate of 7.20%.? This thesis proposes an efficient rule-based automatic program repair method named Rule Fix.The proposed method first mines implicit programming rules in programs to locate defects,and then selects an appropriate patch according to the implicit programming rules,and lastly verifies the patch by utilizing the patch verification schema and the program synthesis tool to ensure the correctness of the repair result.Moreover,to tackle the problem that the existing rule mining algorithms cannot effectively mine low-frequency rules,a low-frequency rule mining algorithm is proposed,which can derive new rules based on the existing rules to improve the ability of rule mining.Finally,a prototype tool is implemented based on the proposed method,and then the proposed method is compared with the existing APR methods.Experimental results demonstrate that the proposed method can repair defects more efficiently than the existing APR methods,with a repair rate of 9.9%.
Keywords/Search Tags:software quality, software security, static analysis, automatic program repair
PDF Full Text Request
Related items