PATENT CLAIM ANALYSIS

Application Number: 15955934
Application Type: Utility
Filing Date: 2018-04
Publication Date: 2019-10
Patent Classification: ["717", "159000"]

Abstract:
Unused instructions and no longer used instructions in a target application binary are determined. The target application binary is rewritten before and after runtime execution of the target application binary to remove the unused and no longer used instructions to reduce binary attack surface area for the runtime execution of the target application binary. Methods, computer systems, and computer program products are disclosed.

Claim (Index 14):
A computer system, comprising:\n one or more memories comprising computer readable code; and one or more processors, the one or more processors causing the computer system, in response to retrieval from the one or more memories and execution of the computer readable code, to perform operations comprising:\n determining unused instructions in a target application binary in a secondary memory, comprising profiling the target application binary to determine first instructions, in a set of instructions that are accessible by the target application binary, that can be removed in a first rewriting of the target application binary; \n rewriting the target application binary before runtime execution to reduce binary attack surface area for the runtime execution of the target application binary, comprising performing the first rewriting of the target application binary to overwrite the determined first instructions to remove the unused instructions from execution in a subsequent runtime execution of the target application binary; \n wherein the first rewriting is performed via one of performing static rewriting of the target application binary residing in the secondary memory or performing dynamic rewriting of the target application binary residing in a main memory; \n wherein the dynamic rewriting of the target application binary during runtime execution is performed on the target application binary in response to the target application being loaded into main memory before executing the first instruction of the target application; \n determining no longer used instructions in the target application binary in the secondary memory to determine second instructions that can be removed in a second rewriting of the target application binary; and \n rewriting the target application binary after runtime execution of the target application binary comprising performing the second rewriting of the target application binary to overwrite the determined second instructions to remove the no longer used instructions from execution in a subsequent runtime execution of the target application binary, to further reduce binary attack surface area for the runtime execution of the target application binary; \n wherein the unused instructions comprises instructions not invoked by the target application binary during runtime execution, and the no longer used instructions comprises previously executed instructions that should not be accessed again during runtime execution of the target application binary.

Metadata:
- Claim Count in Document: 10.0
- Percentile: 91.0
- Lexical Diversity: 1.78947
- Patent Class: 717.0
- Transitional Phrase Type: open
- Component Type: 1
- Foreign Priority: False
- Related Applications: ['14987375', '15882108', '15093269', '13766313', '14686346']

Analysis Scores:
- 35 USC 101 Eligibility (BERT): 0.3309136597748615
- 35 USC 102 Novelty (BERT): 0.5035643952771164
- Combined Prediction Score: 0.348178733325087
- Mean Citation Score: 185.43202
- Max Citation Score: 198.65271
- Similarity Product: 142.19879242622852

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

Dataset: test