Abstract: Fuzzing is a popular way to look for vulnerabilities. But it takes a long time to test because fuzzing is based on generating massive random inputs. Therefore, we introduce a novel system IfCut (If Branch Cutting Based Fuzzing System). First, IfCut can split the complex source code into several new programs with the If-Else Branch Cutting Module; as a result, the execution paths of a single fuzzy test object are simplified. Then Constraints Satisfies Test Cases Generating Module are used to generate initial input of a fuzzy tool named AFL. Finally, AFL fuzz the new programs in parallel. With If Branch Cutting Module and Constraints Satisfies Test Cases Generating Module, the serial dependence among producing fuzzing inputs decreases. Generally, IfCut can speed up improving code coverage rate, thus improve the efficiency of fuzzing. Also, we provide a website with visualized user interfaces to use the system directly without local configuration.
Loading