Detection of malicious software packages
First Claim
1. A method comprising:
- identifying, by a processor executing a security tool, a plurality of components contained in a software package comprising one of a java archive (JAR) file, an Android application package, a docker image, a container file, or a virtual machine image;
comparing, by the processor, the plurality of components contained in the software package to a list of known components;
classifying, by the processor, the software package as insecure when at least one of the plurality of compared components matches an insecure component on the list of known components, or as secure when each of the plurality of compared components matches a corresponding secure component on the list of known components;
preventing, by the processor executing the security tool, addition of the software package to a software repository when the software package is classified as insecure; and
in response to the at least one of the plurality of compared components matching the insecure component, providing, by the processor executing the security tool, an interface to enable a user to request the at least one of the plurality of compared components of the software package be added as a secure component on the list of known components.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for a security tool that verifies the security of a software package. An example method may involve identifying a plurality of components contained in a software package comprising one of a JAR file, an Android application package, a docker image, a container file, or a virtual machine image; comparing the components contained in the software package to a list of known components; classifying the software package as insecure when at least one of the components matches an insecure component, or as secure when each of the compared components matches a corresponding secure component on the list of known components; preventing addition of the software package to a software repository when the software package is classified as insecure; and when insecure, providing an interface to enable a user to request the components of the software package be added as a secure component on the list of known components.
-
Citations
20 Claims
-
1. A method comprising:
-
identifying, by a processor executing a security tool, a plurality of components contained in a software package comprising one of a java archive (JAR) file, an Android application package, a docker image, a container file, or a virtual machine image; comparing, by the processor, the plurality of components contained in the software package to a list of known components; classifying, by the processor, the software package as insecure when at least one of the plurality of compared components matches an insecure component on the list of known components, or as secure when each of the plurality of compared components matches a corresponding secure component on the list of known components; preventing, by the processor executing the security tool, addition of the software package to a software repository when the software package is classified as insecure; and in response to the at least one of the plurality of compared components matching the insecure component, providing, by the processor executing the security tool, an interface to enable a user to request the at least one of the plurality of compared components of the software package be added as a secure component on the list of known components. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A non-transitory computer readable medium comprising instructions to cause a processor to:
-
identify, by the processor executing a security tool, a plurality of components contained in a software package comprising one of a Java archive (JAR) file, an Android application package, a docker image, a container file, or a virtual machine image; compare, by the processor, the plurality of components contained in the software package to a list of known components; classify, by the processor, the software package as insecure when at least one of the plurality of compared components matches an insecure component on the list of known components, or as secure when each of the plurality of compared components matches a corresponding secure component on the list of known components; prevent, by the processor executing the security tool, addition of the software package to a software repository when the software package is classified as insecure; and in response to the at least one of the plurality of compared components matching the insecure component, provide, by the processor executing the security tool, an interface to enable a user to request the at least one of the plurality of compared components of the software package be added as a secure component on the list of known components. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. An apparatus comprising:
-
a memory to contain instructions; and a processor, operatively coupled to the memory, to execute a security tool, the processor to; identify plurality of components contained in a software package comprising one of a Java archive (JAR) file, an Android application package, a docker image, a container file, or a virtual machine image; compare the plurality of components contained in the software package to a list of known components; classify the software package as insecure in response to at least one of the plurality of compared components matching an insecure component on the list of known components, or as secure when each of the plurality of compared components matches a corresponding secure component on the list of known components; prevent addition of the software package to a software repository when the software package is classified as insecure; and in response to the at least one of the plurality of compared components matching the insecure component, provide an interface to enable a user to request the at least one of the plurality of compared components of the software package be added as a secure component on the list of known components. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification