IP Library Granted Patent US 9,848,016
Granted Patent B2
US 9,848,016 · App. 15/350,179 · Granted Dec 19, 2017

Identifying malicious devices within a computer network

Inventors: Oskar Ibatullin (Sunnyvale, CA); Kyle Adams (West Henrietta, NY); Daniel J. Quinlan (Sunnyvale, CA)
Assignee: Juniper Networks, Inc.
H04L63/1466G06F21/554H04L63/0209H04L63/1425H04L63/1441H04L67/10
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 9,848,016
App. No.
15/350,179
Granted
Dec 19, 2017
Kind
B2
Abstract

This disclosure describes techniques for proactively identifying possible attackers based on a profile of a device. For example, a device includes one or more processors and network interface cards to receive, from a remote device, network traffic directed to one or more computing devices protected by the device, determine, based on content of the network traffic, a first set of data points for the device, send a response to the remote device to ascertain a second set of data points for the device, and receive, from the remote device, at least a portion of the second set of data points. The device also includes a security module operable by the processors to determine a maliciousness rating, and selectively manage, based on the maliciousness rating, additional network traffic directed to the one or more computing devices protected by the security device and received from the remote device.

Claims (62)

1. A method comprising:

receiving, by a security device, from a device, network traffic directed to one or more computing devices protected by the security device;

determining, based on content of the network traffic, a first set of data points for the device, the first set of data points specifying characteristics of a software application executing at the device;

sending, by the security device, a response to the device to ascertain a second set of data points for the device, the second set of data points including characteristics of an operating environment provided by and local to the device;

receiving, by the security device and from the device, at least a portion of the second set of data points;

determining whether the received portion of the second set of data points and the first set of data points include inconsistent information; and

responsive to determining that the received portion of the second set of data points and the first set of data points include inconsistent information, managing additional network traffic directed to the one or more computing devices protected by the security device and received from the device.

2. The method of claim 1 , further comprising:

receiving a response to the network traffic from at least one of the one or more computing devices; and

prior to sending the response to the device, injecting, into the response, code to ascertain the second set of data points.

3. The method of claim 1 , wherein determining whether the received portion of the second set of data points and the first set of data points include inconsistent information comprises:

comparing at least one of the first set of data points of the device to at least one of the received portion of the second set of data points.

4. The method of claim 1 , wherein managing the additional network traffic comprises:

generating, based on the received portion of the second set of data points and the first set of data points, a profile for the device;

sending, to a security service, the profile of the device;

receiving, from the security service, an indication of whether the device is a malicious device; and

managing, based on the indication, the additional network traffic directed to the one or more computing devices protected by the security device and received from the device.

5. The method of claim 1 , further comprising:

determining, based on the received portion of the second set of data points, whether at least one plugin installed at the device is a malicious plugin;

responsive to determining that at least one plugin is a malicious plugin, determining an increased likelihood that the device is malicious; and

responsive to determining that at least one plugin is not the malicious plugin, determining a decreased likelihood that the device is malicious.

6. The method of claim 1 , further comprising:

responsive to determining, based on the received portion of the second set of data points, that a whitelisted plugin is installed at the device, determining a decreased likelihood that the device is malicious.

7. The method of claim 1 , further comprising:

determining, based on the received portion of the second set of data points and the first set of data points, that the device is executing a web crawler software application; and

responsive to determining that the device is executing the web crawler software application, determining a decreased likelihood that the device is malicious.

8. The method of claim 1 , further comprising:

responsive to determining that the received portion of the second set of data points and the first set of data points do not include inconsistent information, permitting the additional network traffic from the device to reach the one or more computing devices protected by the security device.

9. The method of claim 1 , wherein managing the additional network traffic comprises:

performing one or more of throttling the additional network traffic, removing one or more user input values from the additional network traffic, dropping the additional network traffic, and redirecting the additional network traffic to a different device.

10. A device comprising:

one or more processors;

one or more network interface cards to receive, from a remote device, network traffic directed to one or more computing devices protected by the remote device, determine, based on content of the network traffic, a first set of data points for the remote device, the first set of data points specifying characteristics of a software application executing at the remote device, send a response to the remote device to ascertain a second set of data points for the remote device, the second set of data points including characteristics of an operating environment provided by and local to the remote device, and receive, from the remote device, at least a portion of the second set of data points; and

a storage device that stores a security module operable by the one or more processors to determine whether the received portion of the second set of data points and the first set of data points include inconsistent information, and, responsive to determining that the received portion of the second set of data points and the first set of data points include inconsistent information, manage additional network traffic directed to the one or more computing devices protected by the security device and received from the remote device.

11. The device of claim 10 ,

wherein the security module is operable by the one or more processors to receive a response to the network traffic from at least one of the one or more computing devices, and

wherein the storage device stores a code injection module operable by the one or more processors to, prior to sending the response to the device, inject, into the response, code to ascertain the second set of data points.

12. The device of claim 10 ,

wherein the storage device stores a profile generation module, a data collection module, and a security module,

wherein the profile generation module is operable by the one or more processors to generate, based on the received portion of the second set of data points and the first set of data points, a profile for the remote device,

wherein the data collection module is operable by the one or more processors to send, to a security service, the profile of the remote device, and receive, from the security service, an indication of whether the remote device is a malicious device, and

wherein the security module is operable by the one or more processors to, responsive to the indication indicating that the remote device is a malicious device, manage the additional network traffic directed to the one or more computing devices protected by the security device and received from the remote device.

13. The device of claim 10 , wherein the security module is operable by the one or more processors to determine, based on the received portion of the second set of data points, whether at least one plugin installed at the remote device is a malicious plugin, responsive to determining that at least one plugin is a malicious plugin, determine an increased likelihood that the remote device is malicious, and responsive to determining that at least one plugin is not the malicious plugin, determine a decreased likelihood that the remote device is malicious.

14. The device of claim 10 , wherein the security module is operable by the one or more processors to, responsive to determining, based on the received portion of the second set of data points, that a whitelisted plugin is installed at the remote device, determine a decreased likelihood that the remote device is malicious.

15. The device of claim 10 , wherein the security module is operable by the one or more processors to determine, based on the received portion of the second set of data points and the first set of data points, that the remote device is executing a web crawler software application, and responsive to determining that the device is executing the web crawler software application, determine a decreased likelihood that the remote device is malicious.

16. The device of claim 10 , wherein the security module is operable by the one or more processors to, responsive to determining that the received portion of the second set of data points and the first set of data points do not include inconsistent information, permit the additional network traffic from the remote device to reach the one or more computing devices protected by the security device.

17. The device of claim 10 , wherein the security module is operable by the one or more processors to manage the additional network traffic by at least one or more of throttling the additional network traffic, removing one or more user input values from the additional network traffic, dropping the additional network traffic, and redirecting the additional network traffic to a different device.

18. A non-transitory computer-readable storage medium encoded with instructions for causing one or more processors of a security device to:

receive, from a device, network traffic directed to one or more computing devices protected by the security device;

determine, based on content of the network traffic, a first set of data points for the device, the first set of data points specifying characteristics of a software application executing at the device;

send a response to the device to ascertain a second set of data points for the device, the second set of data points including characteristics of an operating environment provided by and local to the device;

receive, from the device, at least a portion of the second set of data points;

determine whether the received portion of the second set of data points and the first set of data points include inconsistent information; and

responsive to determining that the received portion of the second set of data points and the first set of data points include inconsistent information manage additional network traffic directed to the one or more computing devices protected by the security device and received from the device.

19. The non-transitory computer-readable storage medium of claim 18 , further encoded with instructions for causing the one or more processors of the security device to:

receive a response to the network traffic from at least one of the one or more computing devices; and

prior to sending the response to the device, inject, into the response, code to ascertain the second set of data points.

20. The non-transitory computer-readable storage medium of claim 18 , further encoded with instructions for causing the one or more processors of the security device to:

generate, based on the received portion of the second set of data points and the first set of data points, a profile for the remote device;

send, to a security service, the profile of the remote device;

receive, from the security service, an indication of whether the remote device is a malicious device; and

manage, based on the indication, the additional network traffic directed to the one or more computing devices protected by the security device and received from the remote device.

Continuity (4)
Continuation 14984884 · Dec 30, 2015
Continuation 14689255 · Apr 17, 2015
Continuation 14014537 · Aug 30, 2013
Related Publication 20170063922A1 · Mar 2, 2017