Program Structure Defect Localization and Repair Methods in Software Security Reverse Analysis
摘要
In the field of software security, program structure defects are the main cause of system vulnerability and attack. Especially when the software is very complicated, bug localization and repair become particularly difficult. The aim of the article is to analyze reverse debugging, program structure defect mining, location and repair methods, and enhance the security and stability of software. The binary code is first processed through a combination of several reverse tools, static analysis tools SonarQube and Checkmax to find out potential program structure defects, and then pass the combination of dynamic symbol execution and fuzzy testing method to monitor the behavior of the program during runtime, in order to further verify defects found by static analysis, and to detect new defects generated during runtime. The effectiveness of the method is further evinced by an experiment using 100 open source software. In most cases, the detection rate of static analysis method for structure defects is 78%, while dynamic analysis on the cloud actually confirms that 92% of these defects are true, so reverse debugging fully satisfies the requirement of using the value stored in the register ESP of the local stack to locate the position on the reference source. After passing the run, the pass rate of software in security testing increases from 85% to 95%, indicating that the application of the method can increase the security and reliability of software. The integrated method can locate and repair buggy structure defects of a program, so that the software has fewer security flaws, and better quality.