In this article, researchers propose a new technique called "coverage-preserving coverage-guided tracing" to accelerate binary-only fuzzing. Binary-only fuzzing is a security testing method that analyzes software without executing it, but it can be time-consuming and resource-intensive. The proposed technique aims to speed up this process by using less computational resources while maintaining the same level of accuracy.
The authors explain that traditional binary-only fuzzing techniques often lead to redundant or unnecessary tests, which can slow down the process. To address this issue, they propose using coverage-guided tracing, which selects a subset of tests that are most likely to reveal security vulnerabilities based on the software’s coverage information. This approach reduces the number of tests without sacrificing accuracy.
The researchers also introduce a new optimization technique called "coverage-preserving tracing," which further accelerates the testing process by only tracing the execution of the tested code when necessary. This technique uses a novel data structure to track the coverage of the software and determine which parts of the code to execute.
The authors demonstrate the effectiveness of their technique through experiments on several software systems, showing that it can significantly reduce the time and computational resources required for binary-only fuzzing while maintaining high accuracy. They also compare their approach with other state-of-the-art techniques and show that it outperforms them in terms of acceleration.
In summary, this article presents a novel technique called coverage-preserving coverage-guided tracing to accelerate binary-only fuzzing without sacrificing accuracy. The proposed technique uses less computational resources while maintaining the same level of security testing efficiency, making it an important contribution to the field of software security testing.
Computer Science, Cryptography and Security