IP Library Granted Patent US 10,505,981
Granted Patent B2
US 10,505,981 · App. 15/803,736 · Granted Dec 10, 2019

Techniques for detecting malicious behavior using an accomplice model

Inventors: Adam Hunt (El Cerrito, CA); Joseph Linn (Emeryville, CA); Nick Goodman (San Mateo, CA); Elias Manousos (San Francisco, CA); Chris Kiernan (San Francisco, CA); David Pon (Sunnyvale, CA); Jonas Edgeworth (San Francisco, CA)
Assignee: RiskIQ, Inc.
H04L63/1483G06F16/24578G06F16/951G06F16/955H04L63/0236H04L63/101G06F21/56H04L63/14H04L63/1433H04L63/1441H04L63/168H04L67/02H04L67/306
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,505,981
App. No.
15/803,736
Granted
Dec 10, 2019
Kind
B2
Abstract

The present disclosure generally relates to web page analysis, and more particularly to detecting malicious behavior using an accomplice model. In certain embodiments, the accomplice model may determine that a URI is associated with malicious behavior based upon the URI being associated with an attribute determined to be related to malicious behavior. Examples of an attribute include a host system, a domain, or an element of a document used to render the web page. Examples of an element of a document used to render the web page may include an active/dynamic element (e.g., a function, a script, etc.) or an inactive/static element (e.g., a string, a number, a frame, a tracking username, a social networking username, etc.).

Claims (73)

1. A method comprising, at a computer system:

receiving a list of Uniform Resource Identifiers (URIs) used to render a malicious web page;

identifying an attribute associated with (1) a URI in the list or (2) the malicious web page;

identifying a first number, the first number including a number of blacklist sequences that include a URI that is associated with the attribute;

identifying a second number, the second number including a number of web pages rendered that:

cause a URI associated with the attribute to be called and

did not call a URI determined to be malicious;

calculating a score for the attribute based upon the first number and the second number;

classifying the attribute as malicious based upon the score;

identifying a URI in the list that is associated with the attribute; and

outputting that the identified URI is associated with malicious behavior.

2. The method of claim 1 , wherein the attribute is a host, a domain, an Internet Protocol (IP) address, or an element included in a document used to render a web page.

3. The method of claim 2 , wherein the element is a function.

4. The method of claim 2 , wherein the element is a tracking ID or a social media profile username.

5. The method of claim 1 , wherein the score is based upon:

a time since the attribute has been associated with a most recent list of the blacklist sequences or

a number of the blacklist sequences including at least one URI that is associated with the attribute.

6. The method of claim 1 , wherein the score is calculated using a lower bound of a Wilson score confidence interval.

7. The method of claim 1 , wherein the list is generated by:

receiving a request to render a web page, wherein the request is associated with a Uniform Resource Identifier (URI) corresponding to the web page;

retrieving, using the URI corresponding to the web page, a document to render the web page;

parsing the document to render the web page, wherein parsing the document causes one or more additional URIs to be called;

determining that the web page is malicious; and

in response to determining that the web page is malicious, generating a list including the URI corresponding to the web page and the one or more additional URIs.

8. A non-transitory computer-readable storage medium storing a plurality of instructions executable by one or more processors of a computer system, the plurality of instructions when executed by the one or more processors cause the one or more processors to:

receive a list of Uniform Resource Identifiers (URIs) used to render a malicious web page;

identify an attribute associated with (1) a URI in the list or (2) the malicious web page;

identify a first number, the first number including a number of blacklist sequences that include a URI that is associated with the attribute;

identify a second number, the second number including a number of web pages rendered that:

cause a URI associated with the attribute to be called and

did not call a URI determined to be malicious;

calculate a score for the attribute based upon the first number and the second number;

classify the attribute as malicious based upon the score;

identify a URI in the list that is associated with the attribute; and

output that the identified URI is associated with malicious behavior.

9. The non-transitory computer-readable storage medium of claim 8 , wherein the attribute is a host, a domain, an Internet Protocol (IP) address, or an element included in a document used to render a web page.

10. The non-transitory computer-readable storage medium of claim 9 , wherein the element is a function.

11. The non-transitory computer-readable storage medium of claim 9 , wherein the element is a tracking ID or a social media profile username.

12. The non-transitory computer-readable storage medium of claim 8 , wherein the score is based upon:

a time since the attribute has been associated with a most recent list of the blacklist sequences or

a number of the blacklist sequences including at least one URI that is associated with the attribute.

13. The non-transitory computer-readable storage medium of claim 8 , wherein the score is calculated using a lower bound of a Wilson score confidence interval.

14. The non-transitory computer-readable storage medium of claim 8 , wherein the list is generated by:

receiving a request to render a web page, wherein the request is associated with a Uniform Resource Identifier (URI) corresponding to the web page;

retrieving, using the URI corresponding to the web page, a document to render the web page;

parsing the document to render the web page, wherein parsing the document causes one or more additional URIs to be called;

determining that the web page is malicious; and

in response to determining that the web page is malicious, generating a list including the URI corresponding to the web page and the one or more additional URIs.

15. A system comprising:

one or more processors; and

a non-transitory computer-readable medium including instructions that, when executed by the one or more processors, cause the one or more processors to:

receive a list of Uniform Resource Identifiers (URIs) used to render a malicious web page;

identify an attribute associated with (1) a URI in the list or (2) the malicious web page;

identify a first number, the first number including a number of blacklist sequences that include a URI that is associated with the attribute;

identify a second number, the second number including a number of web pages rendered that:

cause a URI associated with the attribute to be called and

did not call a URI determined to be malicious;

calculate a score for the attribute based upon the first number and the second number;

classify the attribute as malicious based upon the score;

identify a URI in the list that is associated with the attribute; and

output that the identified URI is associated with malicious behavior.

16. The system of claim 15 , wherein the attribute is a host, a domain, an Internet Protocol (IP) address, or an element included in a document used to render a web page.

17. The system of claim 16 , wherein the element is a tracking ID or a social media profile username.

18. The system of claim 15 , wherein the score is based upon:

a time since the attribute has been associated with a most recent list of the blacklist sequences or

a number of the blacklist sequences including at least one URI that is associated with the attribute.

19. The system of claim 15 , wherein the score is calculated using a lower bound of a Wilson score confidence interval.

20. The system of claim 15 , wherein the list is generated by:

receiving a request to render a web page, wherein the request is associated with a Uniform Resource Identifier (URI) corresponding to the web page;

retrieving, using the URI corresponding to the web page, a document to render the web page;

parsing the document to render the web page, wherein parsing the document causes one or more additional URIs to be called;

determining that the web page is malicious; and

in response to determining that the web page is malicious, generating a list including the URI corresponding to the web page and the one or more additional URIs.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 27, 2021
From: RISKIQ, INC.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 057615/0367 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2021
From: RISKIQ, INC.
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 057581/0013 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 8, 2017
From: HUNT, ADAM; LINN, JOSEPH; GOODMAN, NICK; MANOUSOS, ELIAS; KIERNAN, CHRIS; PON, DAVID; EDGEWORTH, JONAS
To: RISKIQ, INC.
Reel/Frame 044076/0311 →
Continuity (2)
Provisional Application 62417228 · Nov 3, 2016
Related Publication 20180124110A1 · May 3, 2018