System and method for optimizing flow analysis in static code analysis using machine learning
Abstract
System and method for optimizing flow analysis for detections of code violations in a computer program, using machine learning include: analyzing the computer program for code violations; identifying functions or methods with execution path to code violations and creating a first dataset for suspicious functions or methods; identifying functions or methods with no execution path to code violations and creating a second dataset for unsuspicious functions or method; training a machine learning model to classify the suspicious and unsuspicious functions or method using the first and second datasets, wherein the trained model outputs a probability score for the methods or functions with execution paths to code violations; and utilizing the machine learning model to analyze code violations in a new computer program responsive to the probability scores for the methods or functions with execution paths to code violations.
Claims
exact text as granted — not AI-modified1 . A method for optimizing flow analysis for detections of code violations in a computer program, using machine learning, the method comprising:
analyzing the computer program for code violations; identifying functions or methods with execution path to code violations and creating a first dataset for suspicious functions or methods; identifying functions or methods with no execution path to code violations and creating a second dataset for unsuspicious functions or method; training a machine learning model to classify the suspicious and unsuspicious functions or method using the first and second datasets, wherein the trained model outputs a probability score for the methods or functions with execution paths to code violations; and utilizing the machine learning model to analyze code violations in a new computer program responsive to the probability scores for the methods or functions with execution paths to code violations.
2 . The method of claim 1 , wherein said utilizing the machine learning model to analyze code violations further comprises executing a flow analysis tool.
3 . The method of claim 1 , further comprising selecting a predetermined number of execution paths to code violations with highest probability scores for correcting the code violations.
4 . The method of claim 1 , further comprising ranking the functions or methods based on their probability scores.
5 . The method of claim 1 , wherein the code violations include security risks.
6 . The method of claim 1 , wherein said training the machine learning model comprises vectorizing the first and second datasets.
7 . A system for optimizing flow analysis for detections of code violations in a computer program, using machine learning comprising:
a flow analysis engine for analyzing the computer program for code violations; means for identifying functions or methods with execution path to code violations and creating a first dataset for suspicious functions or methods; means for identifying functions or methods with no execution path to code violations and creating a second dataset for unsuspicious functions or method; means for training a machine learning model to classify the suspicious and unsuspicious functions or method using the first and second datasets, wherein the trained model outputs a probability score for the methods or functions with execution paths to code violations; and means for utilizing the machine learning model to analyze code violations in a new computer program responsive to the probability scores for the methods or functions with execution paths to code violations.
8 . The system of claim 7 , wherein said utilizing the machine learning model to analyze code violations further comprises executing a flow analysis tool.
9 . The system of claim 7 , further comprising selecting a predetermined number of execution paths to code violations with highest probability scores for correcting the code violations.
10 . The system of claim 7 , further comprising ranking the functions or methods based on their probability scores.
11 . The system of claim 7 , wherein the code violations include security risks.
12 . The system of claim 7 , wherein said training the machine learning model comprises vectorizing the first and second datasets.
13 . A tangible storage medium for storing a plurality of computer codes, the plurality of computer codes when executed by one more computers performing a method for prioritizing code violations in a computer program, using machine learning, the method comprising:
analyzing the computer program for code violations; identifying functions or methods with execution path to code violations and creating a first dataset for suspicious functions or methods; identifying functions or methods with no execution path to code violations and creating a second dataset for unsuspicious functions or method; training a machine learning model to classify the suspicious and unsuspicious functions or method using the first and second datasets, wherein the trained model outputs a probability score for the methods or functions with execution paths to code violations; and utilizing the machine learning model to analyze code violations in a new computer program responsive to the probability scores for the methods or functions with execution paths to code violations.
14 . The tangible storage medium of claim 13 , wherein said utilizing the machine learning model to analyze code violations further comprises executing a flow analysis tool.
15 . The tangible storage medium of claim 13 , further comprising computer codes for selecting a predetermined number of execution paths to code violations with highest probability scores for correcting the code violations.
16 . The tangible storage medium of claim 13 , further comprising computer codes for ranking the functions or methods based on their probability scores.
17 . The tangible storage medium of claim 13 , wherein the code violations include security risks.
18 . The tangible storage medium of claim 13 , wherein said training the machine learning model comprises vectorizing the first and second datasets.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.