Malware classification and attribution through server fingerprinting using server certificate data
US-10686831-B2 · Jun 16, 2020 · US
US11909760B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11909760-B2 |
| Application number | US-202117395968-A |
| Country | US |
| Kind code | B2 |
| Filing date | Aug 6, 2021 |
| Priority date | Nov 16, 2016 |
| Publication date | Feb 20, 2024 |
| Grant date | Feb 20, 2024 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
In one embodiment, a device in a network receives certificate data for an encrypted traffic flow associated with a client node in the network. The device determines one or more data features from the certificate data. The device determines one or more flow characteristics of the encrypted traffic flow. The device performs a classification of an application executed by the client node and associated with the encrypted traffic flow by using a machine learning-based classifier to assess the one or more data features from the certificate data and the one or more flow characteristics of the traffic flow. The device causes performance of a network action based on a result of the classification of the application.
Opening claim text (preview).
What is claimed is: 1. A method comprising: obtaining, by a device in a network, certificate data of a presently encrypted traffic flow sent from a client node in the network to a remote server, wherein the certificate data of the encrypted traffic flow is passively intercepted by an intermediary device between the client node and the remote server without a man-in-the-middle; determining, by the device, one or more data features from the certificate data of the encrypted traffic flow; determining, by the device, one or more flow characteristics of the encrypted traffic flow; performing, by the device, a classification of an application executed by the client node and associated with the encrypted traffic flow by using a machine learning-based classifier to assess the one or more data features from the certificate data of the encrypted traffic flow and the one or more flow characteristics of the encrypted traffic flow, wherein the machine learning-based classifier assesses the certificate data of the encrypted traffic flow without decrypting the encrypted traffic flow; and causing, by the device, performance of a network action based on a result of the classification of the application. 2. The method as in claim 1 , wherein the classification indicates that the application is malware. 3. The method as in claim 1 , wherein the network action comprises at least one of: blocking the encrypted traffic flow or sending a notification in the network regarding the classification. 4. The method as in claim 1 , wherein the one or more flow characteristics comprise one or more of: sequence of packet lengths and time (SPLT) data regarding the encrypted traffic flow, sequence of application lengths and time (SALT) data regarding the encrypted traffic flow, byte distribution (BD) data regarding the encrypted traffic flow, a ciphersuite, or a Transport Layer Security (TLS) extension. 5. The method as in claim 1 , wherein the one or more data features from the certificate data comprise one or more of: a subjectAltName entry, a certificate validity time period, or a subject common name identifier. 6. The method as in claim 1 , wherein the machine learning-based classifier is configured to assess one or more of: a length of a subject common name identifier, a character frequency of the subject common name identifier, a certificate validity time period, or a number of subjectAltName entries. 7. The method as in claim 1 , further comprising: performing, by the device, the classification of the application based in part on an assessment of the one or more data features from the certificate data by a rule-based analyzer. 8. The method as in claim 1 , further comprising: using, by the device, a training set of one or more data features of a plurality of certificates to train the machine learning-based classifier. 9. The method as in claim 1 , wherein obtaining the certificate data of the encrypted traffic flow comprises: receiving, by the device, the certificate data of the encrypted traffic flow from the intermediary device that passively intercepts the certificate data of the encrypted traffic flow. 10. An apparatus, comprising: one or more network interfaces to communicate with a network; a processor coupled to the one or more network interfaces and configured to execute one or more processes; and a memory configured to store a process that is executable by the processor, the process when executed operable to: obtain certificate data of a presently encrypted traffic flow sent from a client node in the network to a remote server, wherein the certificate data of the encrypted traffic flow is passively intercepted by an intermediary device between the client node and the remote server without a man-in-the-middle; determine one or more data features from the certificate data of the encrypted traffic flow; determine one or more flow characteristics of the encrypted traffic flow; perform a classification of an application executed by the client node and associated with the encrypted traffic flow by using a machine learning-based classifier to assess the one or more data features from the certificate data of the encrypted traffic flow and the one or more flow characteristics of the encrypted traffic flow, wherein the machine learning-based classifier assesses the certificate data of the encrypted traffic flow without decrypting the encrypted traffic flow; and cause performance of a network action based on a result of the classification of the application. 11. The apparatus as in claim 10 , wherein the classification indicates that the application is malware. 12. The apparatus as in claim 10 , wherein the network action comprises at least one of: blocking the encrypted traffic flow or sending a notification in the network regarding the classification. 13. The apparatus as in claim 10 , wherein the one or more flow characteristics comprise one or more of: sequence of packet lengths and time (SPLT) data regarding the encrypted traffic flow, sequence of application lengths and time (SALT) data regarding the encrypted traffic flow, byte distribution (BD) data regarding the encrypted traffic flow, a ciphersuite, or a Transport Layer Security (TLS) extension. 14. The apparatus as in claim 10 , wherein the one or more data features from the certificate data comprise one or more of: a subjectAltNarne entry, a certificate validity time period, or a subject common name identifier. 15. The apparatus as in claim 10 , wherein the machine learning-based classifier is configured to assess one or more of: a length of a subject common name identifier, a character frequency of the subject common name identifier, a certificate validity time period, or a number of subjectAltName entries. 16. The apparatus as in claim 10 , wherein the process when executed is further operable to: perform the classification of the application based in part on an assessment of the one or more data features from the certificate data by a rule-based analyzer. 17. The apparatus as in claim 10 , wherein the process when executed is further operable to: use a training set of one or more data features of a plurality of certificates to train the machine learning-based classifier. 18. The apparatus as in claim 10 , wherein the apparatus obtains the certificate data of the encrypted traffic flow by receiving the certificate data of the encrypted traffic flow from the intermediary device that passively intercepts the certificate data of the encrypted traffic flow. 19. A tangible, non-transitory, computer-readable medium that stores program instructions that cause a device in a network to execute a process comprising: obtaining, by the device, certificate data of a presently encrypted traffic flow sent from a client node in the network to a remote server, wherein the certificate data of the encrypted traffic flow is passively intercepted by an intermediary device between the client node and the remote server without a man-in-the-middle; determining, by the device, one or more data features from the certificate data of the encrypted traffic flow; determining, by the device, one or more flow characteristics of the encrypted traffic flow; performing, by the device, a classification of an application executed by the client node and associated with the encrypted traffic flow by using a machine learning-based classifier to assess the one or more data features from the certificate data of the encrypted traffic flow and the one or more flow characteristics of the encrypted traffic flow, wherein the ma
the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms · CPC title
wherein the data content is protected, e.g. by encrypting or encapsulating the payload · CPC title
by monitoring network traffic (monitoring network traffic per se H04L43/00) · CPC title
Machine learning · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.