Determining a security score in binary software code
AssigneeBlackBerry Limited
InventorsAdam John Boulton, William James McCourt, Paul Compton Hirst, Benjamin John Godwood
Life of this patent
Estimating the term…
Abstract
Systems, methods, and software can be used to determine a security score of a binary software code. In some aspects, a computer-implemented method comprises: receiving a binary software code; inspecting the binary software code to determine at least one Common Vulnerability Scoring Standard (CVSS) factor; and determining a CVSS score based on the at least one CVSS factor.
Claims15
A computer-implemented method, comprising:
- receiving, by at least one hardware processor on a software service platform, a binary software code;
- inspecting, by the at least one hardware processor, the binary software code to determine at least one Common Vulnerability Scoring Standard (CVSS) factor, wherein the at least one CVSS factor comprises an attack vector factor, and the inspecting the binary software code comprises:
- scanning a byte stream of the binary software code to detect text strings related to remote network functionalities that will be performed by a device executing the binary software code, wherein detecting text strings related to the remote network functionalities comprises detecting text strings corresponding to a network protocol in the binary software code;
- determining a first numerical number of the text strings related to remote network functionalities;
- comparing the first numerical number of text strings related to the remote network functionalities and a first configured number threshold for remote network functionalities;
- determining a second numerical number of text strings related to local network functionalities that will be performed by the device executing the binary software code;
- comparing the second numerical number of text strings related to local remote network and a second configured number threshold for local network functionalities;
- and
- determining the attack vector factor based on the comparing between the first numerical number and the first configured number threshold for remote network functionalities and the comparing between the second numerical number and the second configured number threshold for local network functionalities;
- determining, by the at least one hardware processor, a CVSS score based on the at least one CVSS factor;
- and
- outputting, by the software service platform, the CVSS score.
A server, comprising:
- at least one hardware processor;
- and
- one or more computer-readable storage media coupled to the at least one hardware processor and storing programming instructions for execution by the at least one hardware processor, wherein the programming instructions, when executed, cause the at least one hardware processor to perform operations comprising:
- receiving a binary software code;
- inspecting the binary software code to determine at least one Common Vulnerability Scoring Standard (CVSS) factor, wherein the at least one CVSS factor comprises an attack vector factor, and the inspecting the binary software code comprises:
- scanning a byte stream of the binary software code to detect text strings related to remote network functionalities that will be performed by a device executing the binary software code, wherein detecting text strings related to the remote network functionalities comprises detecting text strings corresponding to a network protocol in the binary software code;
- determining a first numerical number of the text strings related to remote network functionalities;
- comparing the first numerical number of text strings related to the remote network functionalities and a first configured number threshold for remote network functionalities;
- determining a second numerical number of text strings related to local network functionalities that will be performed by the device executing the binary software code;
- comparing the second numerical number of text strings related to local remote network and a second configured number threshold for local network functionalities;
- and
- determining the attack vector factor based on the comparing between the first numerical number and the first configured number threshold for remote network functionalities and the comparing between the second numerical number and the second configured number threshold for local network functionalities;
- determining a CVSS score based on the at least one CVSS factor;
- and
- outputting, at the server, the CVSS score.
One or more non-transitory computer-readable media containing instructions which, when executed, cause a computing device to perform operations comprising:
- receiving, by at least one hardware processor, a binary software code;
- inspecting, by the at least one hardware processor, the binary software code to determine at least one Common Vulnerability Scoring Standard (CVSS) factor, wherein the at least one CVSS factor comprises an attack vector factor, and the inspecting the binary software code comprises:
- scanning a byte stream of the binary software code to detect text strings related to remote network functionalities that will be performed by a device executing the binary software code, wherein detecting text strings related to the remote network functionalities comprises detecting text strings corresponding to a network protocol in the binary software code;
- determining a first numerical number of the text strings related to remote network functionalities;
- comparing the first numerical number of text strings related to the remote network functionalities and a first configured number threshold for remote network functionalities;
- determining a second numerical number of text strings related to local network functionalities that will be performed by the device executing the binary software code;
- comparing the second numerical number of text strings related to local remote network and a second configured number threshold for local network functionalities;
- and
- determining the attack vector factor based on the comparing between the first numerical number and the first configured number threshold for remote network functionalities and the comparing between the second numerical number and the second configured number threshold for local network functionalities;
- determining, by the at least one hardware processor, a CVSS score based on the at least one CVSS factor;
- and
- outputting, at the computing device, the CVSS score.
Dependencies are inferred from the claim text.