IP Library Granted Patent US 10,932,017
Granted Patent B2
US 10,932,017 · App. 16/436,489 · Granted Feb 23, 2021

Network telemetry with byte distribution and cryptographic protocol data elements

Inventors: Blake Harrell Anderson (San Jose, CA); David Arthur McGrew (Poolesville, MD); Alison Kendler (Allston, MA)
Assignee: Cisco Technology, Inc.
H04Q9/02H04L9/3066H04L63/0428H04L63/166H04Q9/00H04L63/0823H04Q2209/30
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,932,017
App. No.
16/436,489
Granted
Feb 23, 2021
Kind
B2
Abstract

In one embodiment, a method includes receiving a flow including a plurality of bytes, each byte having one of a plurality of byte values, determining a byte value distribution metric based on a number of instances of each of the plurality of byte values in the flow, and transmitting telemetry data regarding the flow, the telemetry data including the byte value distribution metric.

Claims (34)

1. A method comprising:

receiving, by a device in a computer network, an encrypted flow including a plurality of bytes, each of the bytes having one of a plurality of byte values;

determining, by the device, a byte value distribution metric based on a number of instances of each of the plurality of byte values in the encrypted flow, wherein the byte value distribution metric includes a probability distribution comprising a respective plurality of byte value probabilities corresponding to the plurality of byte values;

classifying, by a machine learning classifier on the device, the encrypted flow as malicious based on the byte value distribution metric; and

transmitting, from the device, telemetry data regarding the encrypted flow for receipt at a system in order to cause a remedial action to be performed at the system based on the telemetry data, the telemetry data including the byte value distribution metric and a classification of the encrypted flow.

2. The method of claim 1 , wherein the byte value probabilities are derived from a normalization of the number of instances of each of the plurality of byte values in the encrypted flow.

3. The method of claim 1 , wherein the byte value distribution metric includes a byte value entropy metric.

4. The method of claim 3 , wherein the byte value entropy metric includes Shannon's entropy of the probability distribution.

5. The method of claim 1 , wherein each one of the byte value probabilities are based on the number of instances of any of two or more of the plurality of byte values in the encrypted flow.

6. The method of claim 1 , wherein the encrypted flow includes a plurality of packets and each of the plurality of packets includes a subset of the plurality of bytes.

7. The method of claim 6 , wherein the telemetry data further includes at least one of a source IP address of the encrypted flow, a destination IP address of the encrypted flow, a start time of the encrypted flow, a stop time of the encrypted flow, a protocol associated with the encrypted flow, a number of the plurality of bytes, or a number of the plurality of packets.

8. The method of claim 1 , wherein the telemetry data further includes cryptographic protocol data.

9. The method of claim 8 , wherein the cryptographic protocol data includes at least one of a Transport Layer Security (TLS) version number, one or more ciphersuites offered by a source device, a ciphersuite selected by a destination device, a TLS sequence of record lengths and times, a record type, a handshake type, an extension type, a size of a cryptographic key, or one or more supported elliptical curves and supported point formats.

10. A method comprising:

receiving, via a network, telemetry data regarding an encrypted flow including a plurality of bytes, each of the bytes having one of a plurality of byte values, the telemetry data including a byte value distribution metric, wherein the byte value distribution metric includes a probability distribution comprising a respective plurality of byte value probabilities corresponding to the plurality of byte values;

classifying, by a machine learning classifier, the encrypted flow as a malicious flow based on the byte value distribution metric; and

taking a remedial action with respect to the encrypted flow based on the classification of the encrypted flow.

11. The method of claim 10 , wherein the byte value probabilities are derived from a normalization of a number of instances of each of the plurality of byte values in the encrypted flow.

12. The method of claim 10 , wherein the byte distribution metric includes a byte value entropy metric.

13. The method of claim 10 , wherein classifying the encrypted flow includes classifying the encrypted flow as a benign flow or a malicious flow.

14. The method of claim 10 , wherein classifying the encrypted flow includes classifying the encrypted flow as a tunneled flow or a direct flow.

15. The method of claim 10 , further comprising generating an alert or quarantining a source device of the encrypted flow based on the classification.

16. The method of claim 10 , wherein the telemetry data further includes cryptographic protocol data and classifying the encrypted flow is further based on the cryptographic protocol data.

17. The method of claim 16 , wherein classifying the encrypted flow based on the cryptographic protocol data includes determining one or more cryptographic libraries of a source device or a destination device of the encrypted flow.

18. An apparatus comprising:

a network interface configured to interface with a network;

one or more processors coupled to the network interface; and

a non-transitory memory comprising instructions that when executed cause the one or more processors to perform operations comprising:

receiving, via the network interface, an encrypted flow including a plurality of bytes, each of the bytes having one of a plurality of byte values;

determining from the encrypted flow, by the one or more processors, a byte value distribution metric comprising an array of values, wherein the byte value distribution metric includes a probability distribution comprising a respective plurality of byte value probabilities corresponding to the plurality of byte values;

classifying, by a machine learning classifier executed by the one or more processors, the encrypted flow as a malicious flow based on the byte value distribution metric; and

transmitting, via the network interface, telemetry data regarding the encrypted flow to a second device to cause a remedial action to be performed based on the telemetry data, the telemetry data including the byte value distribution metric and a classification of the encrypted flow.

19. The apparatus of claim 18 , wherein the byte value probabilities are derived from a normalization of the number of instances of each of the plurality of byte values in the encrypted flow.

20. The apparatus of claim 18 , wherein the byte value distribution metric includes a byte value entropy metric.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2019
From: ANDERSON, BLAKE HARRELL; MCGREW, DAVID ARTHUR; KENDLER, ALISON
To: CISCO TECHNOLOGY, INC.
Reel/Frame 050050/0514 →
Continuity (4)
Continuation 15083586 · Mar 29, 2016
Provisional Application 62275917 · Jan 7, 2016
Provisional Application 62275925 · Jan 7, 2016
Related Publication 20190297402A1 · Sep 26, 2019