IP Library Granted Patent US 10,887,278
Granted Patent B2
US 10,887,278 · App. 16/244,955 · Granted Jan 5, 2021

Systems and methods for discovery of brand-registered domain names

Inventors: Gaurav Mitesh Dalal (Fremont, CA); Ali Mesdaq (San Jose, CA)
Assignee: PROOFPOINT, INC.
H04L61/302G06F16/2468G06F16/951H04L61/1511
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,887,278
App. No.
16/244,955
Granted
Jan 5, 2021
Kind
B2
Abstract

Taking a zero-configuration approach, a domain name discovery system utilizes, in an iterative process, WHOIS data and infrastructure data for a seed domain to automatically discover domain names having registration and/or infrastructure details that match those of the seed domain. Registration information such as a registered email address associated with a domain name discovered through WHOIS data matching or infrastructure data matching is utilized in a reverse lookup for domain names having infrastructure or WHOIS registered information that fully matches the information associated with the domain name discovered through the iterative process. Domain names discovered through WHOIS data matching, infrastructure data matching, and reverse lookup can be presented through a user interface on a client device communicatively connected to the domain name discovery system over a network. The domain name discovery can be performed periodically or in near real time responsive to receiving a new seed domain.

Claims (68)

1. A method for domain name discovery, comprising:

obtaining WHOIS data and infrastructure data for a seed domain, the obtaining performed by a domain name discovery server computer, the WHOIS data containing domain name registration information for the seed domain;

determining, by the domain name discovery server computer, whether the domain name registration information for the seed domain is private;

responsive to the domain name registration information for the seed domain being private, performing an infrastructure data matching procedure utilizing the infrastructure data for the seed domain, the infrastructure data matching procedure performed by the domain name discovery server computer;

responsive to the domain name registration information for the seed domain not being private, performing a WHOIS data matching procedure utilizing the WHOIS data for the seed domain, the WHOIS data matching procedure performed by the domain name discovery server computer;

iteratively performing, by the domain name discovery server computer, the obtaining and the determining for each domain name found through the infrastructure data matching procedure or through the WHOIS data matching procedure until no domain name is found;

performing, by the domain name discovery server computer, a reverse lookup procedure for each domain name found through the infrastructure data matching procedure or through the WHOIS data matching procedure, the reverse lookup procedure comprising:

obtaining, from a WHOIS database, WHOIS data for the each domain name;

determining a registered WHOIS field value from the WHOIS data for the each domain name; and

querying the WHOIS database for domain names having a registered WHOIS field value that fully matches the registered WHOIS field value for the each domain name, wherein the registered WHOIS field value comprises a registered email address, wherein the reverse lookup procedure further comprises, prior to determining the registered email address from the WHOIS data:

determining whether a first WHOIS field for the registered email address is empty; and

responsive to the first WHOIS field being empty, determining whether a second WHOIS field associated with the registered email address is empty; and

generating, by the domain name discovery server computer, a user interface for presenting, on a client device communicatively connected to the domain name discovery server computer, domain names discovered through the WHOIS data matching procedure, the infrastructure data matching procedure, and the reverse lookup procedure.

2. The method according to claim 1 , wherein the reverse lookup procedure further comprises, prior to determining the registered email address from the WHOIS data:

iteratively determining whether a WHOIS field associated with the registered email address is empty until a non-empty WHOIS field associated with the registered email address is found, wherein the registered email address is determined from the non-empty WHOIS field.

3. The method according to claim 1 , wherein the WHOIS data matching procedure comprises performing a plurality of matches, the plurality of matches including a full match of a first registration detail in the domain name registration information for the seed domain, a fuzzy match of a second registration detail in the domain name registration information for the seed domain, and a domain match of any domain name registered using the seed domain.

4. The method according to claim 3 , wherein the WHOIS data matching procedure outputs a domain name that has at least two registration details that fully match corresponding registration details of the seed domain, that has at least one full match and one fuzzy match, or that has at least one full match and one domain match.

5. The method according to claim 1 , wherein the infrastructure data matching procedure comprises performing a plurality of matches, the plurality of matches including a full match of an infrastructure detail in the infrastructure data for the seed domain and a configuration parameter match of a user-provided configuration parameter of the seed domain.

6. The method according to claim 5 , wherein the infrastructure data matching procedure outputs a domain name that has an Internet Protocol (IP) address, an Autonomous System Number (ASN), a secure sockets layer (SSL) certificate, a mail exchange (MX) record, or a configuration parameter that fully matches a corresponding IP address, ASN, SSL certificate, MX record, or configuration parameter of the seed domain.

7. The method according to claim 1 , wherein the reverse lookup procedure further comprises:

determining infrastructure data for the each domain name; and

querying an infrastructure data source for domain names having the infrastructure data that match the infrastructure data for the each domain name.

8. A domain name discovery system, comprising:

a processor;

a non-transitory computer-readable medium; and

stored instructions translatable by the processor to perform:

obtaining WHOIS data and infrastructure data for a seed domain, the WHOIS data containing domain name registration information for the seed domain;

determining whether the domain name registration information for the seed domain is private;

responsive to the domain name registration information for the seed domain being private, performing an infrastructure data matching procedure utilizing the infrastructure data for the seed domain;

responsive to the domain name registration information for the seed domain not being private, performing a WHOIS data matching procedure utilizing the WHOIS data for the seed domain;

iteratively performing the obtaining and the determining for each domain name found through the infrastructure data matching procedure or through the WHOIS data matching procedure until no domain name is found;

performing a reverse lookup procedure for each domain name found through the infrastructure data matching procedure or through the WHOIS data matching procedure, the reverse lookup procedure comprising:

obtaining, from a WHOIS database, WHOIS data for the each domain name;

determining a registered WHOIS field value from the WHOIS data for the each domain name; and

querying the WHOIS database for domain names having a registered WHOIS field value that fully matches the registered WHOIS field value for the each domain name, wherein the registered WHOIS field value comprises a registered email address, wherein the reverse lookup procedure further comprises, prior to determining the registered email address from the WHOIS data:

determining whether a first WHOIS field for the registered email address is empty; and

responsive to the first WHOIS field being empty, determining whether a second WHOIS field associated with the registered email address is empty; and

generating a user interface for presenting, on a client device communicatively connected to the domain name discovery system, domain names discovered through the WHOIS data matching procedure, the infrastructure data matching procedure, and the reverse lookup procedure.

9. The domain name discovery system of claim 8 , wherein the reverse lookup procedure further comprises, prior to determining the registered email address from the WHOIS data:

iteratively determining whether a WHOIS field associated with the registered email address is empty until a non-empty WHOIS field associated with the registered email address is found, wherein the registered email address is determined from the non-empty WHOIS field.

10. The domain name discovery system of claim 8 , wherein the WHOIS data matching procedure comprises performing a plurality of matches, the plurality of matches including a full match of a first registration detail in the domain name registration information for the seed domain, a fuzzy match of a second registration detail in the domain name registration information for the seed domain, and a domain match of any domain name registered using the seed domain.

11. The domain name discovery system of claim 10 , wherein the WHOIS data matching procedure outputs a domain name that has at least two registration details that fully match corresponding registration details of the seed domain, that has at least one full match and one fuzzy match, or that has at least one full match and one domain match.

12. The domain name discovery system of claim 8 , wherein the infrastructure data matching procedure comprises performing a plurality of matches, the plurality of matches including a full match of an infrastructure detail in the infrastructure data for the seed domain and a configuration parameter match of a user-provided configuration parameter of the seed domain.

13. The domain name discovery system of claim 12 , wherein the infrastructure data matching procedure outputs a domain name that has an Internet Protocol (IP) address, an Autonomous System Number (ASN), a secure sockets layer (SSL) certificate, a mail exchange (MX) record, or a configuration parameter that fully matches a corresponding IP address, ASN, SSL certificate, MX record, or configuration parameter of the seed domain.

14. The domain name discovery system of claim 8 , wherein the reverse lookup procedure further comprises:

determining infrastructure data for the each domain name; and

querying an infrastructure data source for domain names having the infrastructure data that match the infrastructure data for the each domain name.

15. A computer program product comprising a non-transitory computer-readable medium storing instructions translatable by a domain name discovery server computer to perform:

obtaining WHOIS data and infrastructure data for a seed domain, the WHOIS data containing domain name registration information for the seed domain;

determining whether the domain name registration information for the seed domain is private;

responsive to the domain name registration information for the seed domain being private, performing an infrastructure data matching procedure utilizing the infrastructure data for the seed domain;

responsive to the domain name registration information for the seed domain not being private, performing a WHOIS data matching procedure utilizing the WHOIS data for the seed domain;

iteratively performing the obtaining and the determining for each domain name found through the infrastructure data matching procedure or through the WHOIS data matching procedure until no domain name is found;

performing a reverse lookup procedure for each domain name found through the infrastructure data matching procedure or through the WHOIS data matching procedure, the reverse lookup procedure comprising:

obtaining, from a WHOIS database, WHOIS data for the each domain name;

determining a registered WHOIS field value from the WHOIS data for the each domain name; and

querying the WHOIS database for domain names having a registered WHOIS field value that fully matches the registered WHOIS field value for the each domain name, wherein the registered WHOIS field value comprises a registered email address, wherein the reverse lookup procedure further comprises, prior to determining the registered email address from the WHOIS data:

determining whether a first WHOIS field for the registered email address is empty; and

responsive to the first WHOIS field being empty, determining whether a second WHOIS field associated with the registered email address is empty; and

generating a user interface for presenting, on a client device communicatively connected to the domain name discovery server computer, domain names discovered through the WHOIS data matching procedure, the infrastructure data matching procedure, and the reverse lookup procedure.

16. The computer program product of claim 15 , wherein the reverse lookup procedure further comprises, prior to determining the registered email address from the WHOIS data:

iteratively determining whether a WHOIS field associated with the registered email address is empty until a non-empty WHOIS field associated with the registered email address is found, wherein the registered email address is determined from the non-empty WHOIS field.

17. The computer program product of claim 15 , wherein the WHOIS data matching procedure comprises performing a plurality of matches, the plurality of matches including a full match of a first registration detail in the domain name registration information for the seed domain, a fuzzy match of a second registration detail in the domain name registration information for the seed domain, and a domain match of any domain name registered using the seed domain.

18. The computer program product of claim 17 , wherein the WHOIS data matching procedure outputs a domain name that has at least two registration details that fully match corresponding registration details of the seed domain, that has at least one full match and one fuzzy match, or that has at least one full match and one domain match.

19. The computer program product of claim 15 , wherein the infrastructure data matching procedure comprises performing a plurality of matches, the plurality of matches including a full match of an infrastructure detail in the infrastructure data for the seed domain and a configuration parameter match of a user-provided configuration parameter of the seed domain, wherein the infrastructure data matching procedure outputs a domain name that has an Internet Protocol (IP) address, an Autonomous System Number (ASN), a secure sockets layer (SSL) certificate, a mail exchange (MX) record, or a configuration parameter that fully matches a corresponding IP address, ASN, SSL certificate, MX record, or configuration parameter of the seed domain.

20. The computer program product of claim 15 , wherein the reverse lookup procedure further comprises:

determining infrastructure data for the each domain name; and

querying an infrastructure data source for domain names having the infrastructure data that match the infrastructure data for the each domain name.

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 Jan 10, 2019
From: DALAL, GAURAV MITESH; MESDAQ, ALI
To: PROOFPOINT, INC.
Reel/Frame 047959/0774 →
Cited By (1)
US 12,470,513