IP Library Granted Patent US 11,716,310
Granted Patent B2
US 11,716,310 · App. 17/214,599 · Granted Aug 1, 2023

Systems and methods for in-process URL condemnation

Inventors: Pranay Harsadbhai Patel (Broomfield, CO); Juan Marcelo Da Cruz Pinto (Portland, OR)
Assignee: Proofpoint, Inc.
H04L63/0236G06F16/22G06F21/51G06F21/566G06F21/577
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 11,716,310
App. No.
17/214,599
Granted
Aug 1, 2023
Kind
B2
Abstract

A universal resource locator (URL) collider processes a click event referencing a URL and directs a browser to a page at the URL. While the page is being rendered by the browser with page data from a web server, the URL collider intercepts the page data including events associated with rendering the page, determines microfeatures of the page such as Document Object Model objects and any URLs referenced by the page, applies detection rules, tags as evidence any detected bad microfeature, bad URL, or suspicious sequence of events, and stores the evidence in an evidence database. Based on the evidence, a judge module dynamically determines whether to condemn the URL before or just in time as the page at the URL is fully rendered by the browser. If so, the browser is directed to a safe location or a notification page.

Claims (56)

1. A method for in-process universal resource locator (URL) condemnation, the method comprising:

processing, by a URL collider executing on a computer system operating in a first computer network, a click event referencing a URL;

directing, by the URL collider, a browser running on the computer system to a page at the URL, the page hosted by a web server in a second computer network; and

while the page is being rendered by the browser with page data from the web server, performing, by the URL collider:

intercepting the page data from the web server, the page data including events associated with rendering the page in the browser;

determining, from the page data, microfeatures of the page and any URLs referenced by the page;

applying detection rules to the events associated with rendering the page in the browser, the microfeatures of the page, and the URLs referenced by the page, wherein the detection rules comprise a rule which identifies a microfeature as bad, a rule which identifies a URL as bad, and a rule which identifies a sequence of events as suspicious;

tagging as evidence any detected bad microfeature, any detected bad URL, and any detected suspicious sequence of events; and

storing the evidence in an evidence database accessible by a judge module;

based on the evidence, dynamically determining, by the judge module, whether to condemn the URL before or just in time as the page at the URL is fully rendered by the browser.

2. The method according to claim 1 , wherein the click event is obtained by the computer system from a message queue or received by the computer system from a URL feed, from a service which handles URL threats, from an agent of the computer system, or from an email server communicatively connected to the computer system.

3. The method according to claim 1 , wherein the microfeatures comprise Document Object Model (DOM) objects.

4. The method according to claim 1 , wherein the browser comprises a headless browser.

5. The method according to claim 1 , further comprising:

prior to directing the browser to render the page at the URL, querying the judge module on whether the URL referenced in the click event is known to the judge module, wherein the judge module is operable to compare the URL referenced in the click event with known URLs stored in a local cache or the evidence database and return, prior to the page at the URL is fully rendered by the browser, a verdict indicating whether the URL referenced in the click event is to be condemned.

6. The method according to claim 1 , further comprising:

responsive to a determination to condemn the URL referenced in the click event before or just in time as the page at the URL is fully rendered by the browser, directing the browser to a safe location or to a notification page.

7. The method according to claim 1 , wherein the sequence of event indicates that an inline frame was generated.

8. A system for in-process universal resource locator (URL) condemnation, the system comprising:

a processor;

a non-transitory computer-readable medium; and

stored instructions translatable by the processor for:

processing, in a first computer network, a click event referencing a URL;

directing a browser to a page at the URL, the page hosted by a web server in a second computer network; and

while the page is being rendered by the browser with page data from the web server, performing:

intercepting the page data from the web server, the page data including events associated with rendering the page in the browser;

determining, from the page data, microfeatures of the page and any URLs referenced by the page;

applying detection rules to the events associated with rendering the page in the browser, the microfeatures of the page, and the URLs referenced by the page, wherein the detection rules comprise a rule which identifies a microfeature as bad, a rule which identifies a URL as bad, and a rule which identifies a sequence of events as suspicious;

tagging as evidence any detected bad microfeature, any detected bad URL, and any detected suspicious sequence of events; and

storing the evidence in an evidence database;

based on the evidence, dynamically determining whether to condemn the URL before or just in time as the page at the URL is fully rendered by the browser.

9. The system of claim 8 , wherein the click event is obtained from a message queue or received from a URL feed, from a service which handles URL threats, from an agent of the system, or from an email server communicatively connected to the system.

10. The system of claim 8 , wherein the microfeatures comprise Document Object Model (DOM) objects.

11. The system of claim 8 , wherein the browser comprises a headless browser.

12. The system of claim 8 , wherein the stored instructions are further translatable by the processor for:

prior to directing the browser to render the page at the URL, querying a judge module on whether the URL referenced in the click event is known to the judge module, wherein the judge module is operable to compare the URL referenced in the click event with known URLs stored in the evidence database and return, prior to the page at the URL is fully rendered by the browser, a verdict indicating whether the URL referenced in the click event is to be condemned.

13. The system of claim 8 , wherein the stored instructions are further translatable by the processor for:

responsive to a determination to condemn the URL referenced in the click event before or just in time as the page at the URL is fully rendered by the browser, directing the browser to a safe location or to a notification page.

14. The system of claim 8 , wherein the sequence of event indicates that an inline frame was generated.

15. A computer program product for in-process universal resource locator (URL) condemnation, the computer program product comprising a non-transitory computer-readable medium storing instructions translatable by a processor for:

processing, in a first computer network, a click event referencing a URL;

directing a browser to a page at the URL, the page hosted by a web server in a second computer network; and

while the page is being rendered by the browser with page data from the web server, performing:

intercepting the page data from the web server, the page data including events associated with rendering the page in the browser;

determining, from the page data, microfeatures of the page and any URLs referenced by the page;

applying detection rules to the events associated with rendering the page in the browser, the microfeatures of the page, and the URLs referenced by the page, wherein the detection rules comprise a rule which identifies a microfeature as bad, a rule which identifies a URL as bad, and a rule which identifies a sequence of events as suspicious;

tagging as evidence any detected bad microfeature, any detected bad URL, and any detected suspicious sequence of events; and

storing the evidence in an evidence database;

based on the evidence, dynamically determining whether to condemn the URL before or just in time as the page at the URL is fully rendered by the browser.

16. The computer program product of claim 15 , wherein the click event is obtained from a message queue or received from a URL feed, from a service which handles URL threats, from an agent of the system, or from an email server communicatively connected to the system.

17. The computer program product of claim 15 , wherein the microfeatures comprise Document Object Model (DOM) objects.

18. The computer program product of claim 15 , wherein the browser comprises a headless browser.

19. The computer program product of claim 15 , wherein the instructions are further translatable by the processor for:

prior to directing the browser to render the page at the URL, querying a judge module on whether the URL referenced in the click event is known to the judge module, wherein the judge module is operable to compare the URL referenced in the click event with known URLs stored in the evidence database and return, prior to the page at the URL is fully rendered by the browser, a verdict indicating whether the URL referenced in the click event is to be condemned.

20. The computer program product of claim 15 , wherein the instructions are further translatable by the processor for:

responsive to a determination to condemn the URL referenced in the click event before or just in time as the page at the URL is fully rendered by the browser, directing the browser to a safe location or to a notification page.

Assignments (5)
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Dec 8, 2025
From: PROOFPOINT, INC.
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 073889/0677 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Mar 21, 2024
From: GOLDMAN SACHS BANK USA, AS AGENT
To: PROOFPOINT, INC.
Reel/Frame 066865/0648 →
FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 31, 2021
From: PROOFPOINT, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 057389/0615 →
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 31, 2021
From: PROOFPOINT, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 057389/0642 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 21, 2021
From: PATEL, PRANAY HARSADBHAI; DA CRUZ PINTO, JUAN MARCELO
To: PROOFPOINT, INC.
Reel/Frame 055995/0419 →