IP Library Granted Patent US 8,214,497
Granted Patent B2
US 8,214,497 · App. 11/626,603 · Granted Jul 3, 2012

Multi-dimensional reputation scoring

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 8,214,497
App. No.
11/626,603
Granted
Jul 3, 2012
Kind
B2
Abstract

Methods and systems for assigning reputation to communications entities include collecting communications data from distributed agents, aggregating the communications data, analyzing the communications data and identifying relationships between communications entities based upon the communications data.

Claims (72)

1. A computer implemented method operable to assign a reputation to a communications entity associated with a received communication, the method comprising:

dispersing a plurality of agents within a widely distributed network, each of the agents being associated with a respective security device operable to protect an associated network from communications that violate a policy associated with the associated network;

collecting data associated with communications from a plurality of entities originating communications, the plurality of entities including a reputable entity with a reputable reputation, a non-reputable entity with a non-reputable reputation and an unknown entity with an unknown reputation, wherein collecting data comprises using the plurality of agents to collect data associated with the communications;

aggregating the collected data;

analyzing the aggregated data to identify attributes respectively associated with the communications from the plurality of entities;

correlating the attributes to identify relationships between each of the plurality of entities, each identified relationship between entities is associated with a strength based on similarities between the attributes of communications from the entities;

attributing, by one or more data processors, a portion of reputable qualities from the reputable entity to the reputation of the unknown entity based on the strength of the relationship between the reputable entity and the unknown entity;

attributing, by the one or more data processors, a portion of non-reputable qualities from the non-reputable entity to the reputation of the unknown entity based on the strength of the relationship between the non-reputable entity and the unknown entity;

updating the reputation of the unknown entity based upon the portion of reputable qualities attributed to the unknown entity from the reputable entity and the portion of non-reputable qualities attributed to the unknown entity from the non-reputable entity, wherein the reputation of the unknown entity comprises indications of a reputation of the unknown entity in a plurality of categories representing types of activity in which the unknown entity or related entities have engaged; and

communicating data specifying the updated reputation information of the unknown entity to one or more of the plurality of agents.

2. The method of claim 1 , wherein the indications comprise a reputation vector.

3. The method of claim 2 , further comprising using the communicated updated reputation information to determine whether to allow a voice over internet protocol connection or a short message service connection.

4. The method of claim 3 , further comprising comparing the reputation information to a policy to determine whether to allow a voice over internet protocol connection or a short message service connection.

5. The method of claim 4 , wherein the policy is defined by an administrator of the associated network to which the policy belongs.

6. The method of claim 2 , further comprising using the communicated reputation information to determine one or more selected interrogation engines selected from a plurality of interrogation engines, wherein the selected interrogation engines will interrogate a received communication.

7. The method of claim 6 , wherein the one or more selected interrogation engines omit any of the plurality of interrogation engines that test for risks that are not implicated by the reputation vector.

8. The method of claim 2 , further comprising using the communicated reputation information to determine which of a plurality of agents to use for interrogation of a received communication.

9. The method of claim 8 , wherein a communication associated with an entity that does not comply with a policy for the associated network is assigned to an agent based on the interrogation volume of the agent's interrogation queue.

10. The method of claim 8 , wherein a communication associated with an entity that complies with a policy for the associated network is assigned to an agent based on the interrogation volume of the agent's interrogation queue.

11. The method of claim 2 , wherein the reputation comprises one or more of a reputation for originating spam, a reputation for originating image spam, a reputation for originating attacks, a reputation for intrusion, a reputation for originating phishing communications, a geolocation-based reputation, or a reputation for originating bulk mail.

12. The method of claim 2 , wherein the plurality of agents include local reputation information, the local reputation information comprising one or more reputations respectively associated with one or more entities.

13. The method of claim 12 , further comprising:

aggregating the local reputation information; and

deriving a global reputation vector based upon the aggregation of the local reputation information.

14. The method of claim 13 , further comprising:

receiving a reputation query from an agent;

deriving the global reputation vector responsive to the reputation query; and

communicating the global reputation vector to the agent originating the reputation query.

15. The method of claim 14 , wherein the local reputation information comprises a plurality of local reputations and confidence values associated with the local reputations, wherein aggregating the local reputation information comprises adjusting each of the local reputations by an associated confidence value and combining the adjusted local reputations to produce a native global reputation vector.

16. The method of claim 15 , further comprising applying a transform to the native global reputation vector to produce the global reputation vector.

17. The method of claim 16 , wherein the transform comprises a local bias associated with the agent originating the reputation query.

18. The method of claim 17 , wherein the local bias is operable to adjust the native global bias based upon preferences associated with the associated network.

19. The method of claim 1 , wherein the entities comprise web entities operable to receive hypertext transfer protocol requests and to communicate one or more web pages responsive to the hypertext transfer protocol requests, wherein the reputation associated with the web entities comprises a reputation for communication of non-reputable web pages.

20. A computer implemented method operable to assign a reputation to a communications entity associated with a received communication, comprising:

collecting data associated with communications from a plurality of entities originating communications, the plurality of entities including a reputable entity with a reputable reputation, a non-reputable entity with a non-reputable reputation and an unknown entity with an unknown reputation, wherein collecting data comprises receiving data from a plurality of agents dispersed in a widely distributed network and associated with respective security devices to collect data associated with the communications;

aggregating the collected data;

analyzing the aggregated data to identify attributes respectively associated with the communications from the plurality of entities;

correlating the attributes to identify relationships between each of the plurality of entities each identified relationship between entities is associated with a strength based on similarities between the attributes of communications from the entities;

attributing, by one or more data processors, a portion reputable qualities from the reputable entity to the reputation of the unknown entity based on the strength of the relationship between the reputable entity and the unknown entity;

attributing, by the one or more data processors, a portion of non-reputable qualities from the non-reputable entity to the reputation of the unknown entity based on the strength of the relationship between the non-reputable entity and the unknown entity;

updating the reputation of the unknown entity based upon the portion of reputable qualities attributed to the unknown entity from the reputable entity and the portion of non-reputable qualities attributed to the unknown entity from the non-reputable entity, wherein the reputation of the unknown entity comprises indications of a reputation of the unknown entity in a plurality of categories representing types of activity in which the unknown entity or related entities have engaged; and

handling communications based upon the updated reputation.

21. A distributed system operable to derive and communicate a reputation associated with a communications entity, comprising:

a communications device operable to communicate with a plurality of agents dispersed within a global network, each of the agents being operable to derive respective local reputations associated with entities from which communications are received, wherein the plurality of agents are further operable to collect data associated with received communications;

one or more data aggregation engines operable to aggregate the collected data via the communications device;

computer memory operable to store the aggregated data;

an analyzer operable to analyze the data to identify attributes respectively associated with entities originating the received communications, wherein the originating entities including a reputable entity with a reputable reputation, a non-reputable entity with a non-reputable reputation and an unknown entity with an unknown reputation;

a correlation engine operable to correlate the attributes associated with the originating entities and to identify relationships between the entities, each identified relationship between originating entities associated with a strength based on similarities between the attributes of communications from the entities;

a reputation engine operable to:

identify relationships between the originating entities;

attribute a portion of reputable qualities from the reputable entity to the reputation of the unknown entity based on the strength of the relationship between the reputable entity and the unknown entity;

attribute a portion of non-reputable qualities from the non-reputable entity to the reputation of the unknown entity based on the strength of the relationship between the non-reputable entity and the unknown entity; and

update the reputation associated with the unknown entity based upon the portion of reputable qualities attributed to the unknown entity from the reputable entity and the portions of non-reputable qualities attributed to the unknown entity from the non-reputable entity, wherein the reputation of the unknown entity comprises indications of a reputation of the unknown entity in a plurality of categories representing types of activity in which the unknown entity or related entities have engaged; and

wherein the communications device is further operable to communicate the updated reputation information to devices operating on the global network.

22. The system of claim 21 , wherein the indications comprise a reputation vector.

23. The system of claim 22 , wherein the devices operating on the global network are operable to use the communicated updated reputation information to determine whether to allow a voice over interne protocol connection or a short message service connection.

24. The system of claim 23 , wherein the devices are operable to compare reputation information to a policy to determine whether to allow a voice over internet protocol connection or a short message service connection.

25. The system of claim 24 , wherein the policy is defined by an administrator of the associated network to which the device belongs.

26. The system of claim 22 , further comprising a load balancer operable to use the communicated reputation information to select one or more interrogation engines from a plurality of interrogation engines, wherein the one or more selected interrogation engines will interrogate a received communication.

27. The system of claim 26 , wherein the one or more selected interrogation engines comprise those of the plurality of interrogation engines that test for risks that are implicated by the reputation vector.

28. The system of claim 22 , further comprising a load balancer operable to use the communicated reputation information to determine which of a plurality of agents to use for interrogation of a received communication.

29. The system of claim 28 , wherein a communication associated with an entity that does not comply with a policy for the associated network is assigned to an agent based on an interrogation volume of an interrogation queue for the agent.

30. The system of claim 28 , wherein a communication associated with an entity that complies with policy for the associated network is assigned to an agent based on an interrogation volume of an interrogation queue for the agent.

31. The system of claim 22 , wherein the reputation comprises one or more of a reputation for originating spam, a reputation for originating image spam, a reputation for originating attacks, a reputation for intrusion, a reputation for originating phishing communications, or a reputation for originating bulk mail.

32. The system of claim 22 , wherein the plurality of agents include local reputation information, the local reputation information comprising one or more reputations respectively associated with one or more entities.

33. The system of claim 32 , further comprising a reputation aggregation engine operable to aggregate local reputation information retrieved from the plurality of agents, and to derive a global reputation vector based upon the aggregation of the local reputation information.

34. The system of claim 33 , wherein the communications device is operable to receive a reputation query from an agent, and the reputation aggregation engine is operable to derive the global reputation vector responsive to the reputation query, whereby the communications device can communicate the global reputation vector to the agent originating the reputation query.

35. The system of claim 34 , wherein the local reputation information comprises a plurality of local reputations and confidence values associated with the local reputations, wherein reputation aggregation engine is operable to adjust each of the local reputations by an associated confidence value and combining the adjusted local reputations to produce a native global reputation vector.

36. The system of claim 35 , wherein the reputation aggregation engine is further operable to apply a transform to the native global reputation vector to produce the global reputation vector.

37. The system of claim 36 , wherein the transform comprises a local bias associated with the agent originating the reputation query.

38. The system of claim 37 , wherein the local bias is operable to adjust the native global bias based upon preferences associated with the associated network.

39. The system of claim 21 , wherein the entities comprise web entities operable to receive hypertext transfer protocol requests and to communicate one or more web pages responsive to the hypertext transfer protocol requests, wherein the reputation associated with the web entities comprises a reputation for communication of non-reputable web pages.

Assignments (11)
CORRECTIVE ASSIGNMENT TO CORRECT THE THE PATENT TITLES AND REMOVE DUPLICATES IN THE SCHEDULE PREVIOUSLY RECORDED AT REEL: 059354 FRAME: 0335. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 23, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 060792/0307 →
SECURITY INTEREST Recorded Mar 3, 2022
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT AND COLLATERAL AGENT
Reel/Frame 059354/0335 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045056/0676 Recorded Mar 2, 2022
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 059354/0213 →
RELEASE OF INTELLECTUAL PROPERTY COLLATERAL - REEL/FRAME 045055/0786 Recorded Oct 26, 2020
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: MCAFEE, LLC
Reel/Frame 054238/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045055 FRAME 786. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055854/0047 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVE PATENT 6336186 PREVIOUSLY RECORDED ON REEL 045056 FRAME 0676. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTEREST. Recorded Oct 22, 2020
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054206/0593 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 045055/0786 →
SECURITY INTEREST Recorded Jan 12, 2018
From: MCAFEE, LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 045056/0676 →
CHANGE OF NAME AND ENTITY CONVERSION Recorded Aug 24, 2017
From: MCAFEE, INC.
To: MCAFEE, LLC
Reel/Frame 043665/0918 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 11, 2010
From: SECURE COMPUTING, LLC
To: MCAFEE, INC.
Reel/Frame 023915/0990 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 27, 2007
From: ALPEROVITCH, DMITRI; FOOTE-LENNOX, TOMO; GOULD, JEREMY; GREVE, PAULA; HERNANDEZ, ALEJANDRO MANUEL; JUDGE, PAUL; KRASSER, SVEN; LANGE, TIM; SCHNECK, PHYLLIS ADELE; STECHER, MARTIN; TANG, YUCHUN; WILLIS, LAMAR LORENZO; YANG, WEILAI; ZDZIARSKI, JONATHAN ALEXANDER; TRIVEDI, AARJAV JYOTINDRA NEETA
To: SECURE COMPUTING CORPORATION
Reel/Frame 019616/0219 →