PATENT CLAIM ANALYSIS

Application Number: 16010722
Application Type: Utility
Filing Date: 2018-06
Publication Date: 2019-12
Patent Classification: ["717", "128000"]

Abstract:
According to some examples, computer-implemented methods for branch coverage guided symbolic execution for hybrid fuzzing are described. An example computer-implemented method may include receiving a seed input of a binary program under analysis (BPUA) that is discovered during testing by a greybox fuzzer. The method may also include concretely executing the seed input in the BPUA, and collecting a trace resulting from the concrete execution of the seed input. The method may further include determining whether the concrete execution of the seed input discovers a new branch. The method may include, responsive to a determination that the concrete execution of the seed input discovers a new branch, updating a bitmap to indicate that the new branch is discovered, wherein the bitmap is utilized by the greybox fuzzer to maintain a record of discovered branches in BPUA, and providing the seed input to the greybox fuzzer.

Claim (Index 16):
A system to perform branch coverage guided symbolic execution for hybrid fuzzing, the system comprising:\n one or more non-transitory machine-readable mediums configured to store instructions; and one or more processors configured to execute the instructions stored on the one or more non-transitory machine-readable mediums, wherein execution of the instructions causes the one or more processors to:\n receive a seed input of a binary program under analysis (BPUA) that is discovered during testing of the BPUA by a greybox fuzzer; \n concretely execute the BPUA using the seed input; \n collect a trace resulting from the concrete execution of the BPUA using the seed input; \n determine whether the concrete execution of the BPUA using the seed input discovers a new branch by comparing branches executed in the trace to a bitmap indicative of discovered branches previously discovered during prior executions of the BPUA by the greybox fuzzer; and \n responsive to a determination that the concrete execution of the BPUA using the seed input discovers a new branch:\n update a bitmap to indicate that the new branch is discovered, wherein the bitmap is utilized by the greybox fuzzer during the testing of the BPUA to maintain a record of discovered branches in BPUA; \n symbolically execute the BPUA along the trace using a symbol of the seed input; \n collect one or more constraints satisfied along the trace symbolically executed through the BPUA, wherein at least one of the one or more constraints is used to transform the seed input; \n place the transformed seed input in a queue; and \n provide the transformed seed input to the greybox fuzzer.

Metadata:
- Claim Count in Document: 50.0
- Percentile: 94.0
- Lexical Diversity: 2.22535
- Patent Class: 717.0
- Transitional Phrase Type: open
- Component Type: 1
- Foreign Priority: False
- Related Applications: ['15871955', '12249646', '12722404', '15988934', '11197912']

Analysis Scores:
- 35 USC 101 Eligibility (BERT): 0.3731525281937345
- 35 USC 102 Novelty (BERT): 0.5418134635844967
- Combined Prediction Score: 0.3900186217328108
- Mean Citation Score: 231.586034
- Max Citation Score: 362.3546
- Similarity Product: 298.39649960914846

Labels:
- Claim Label 101: 1
- Claim Label 102: 1
- Claim Label 103: 0
- Claim Label 112: 1
- Combined Label: 1
- Label 101 Adjusted: 1

Dataset: test