IP Library Granted Patent US 9,596,217
Granted Patent B2
US 9,596,217 · App. 14/201,607 · Granted Mar 14, 2017

Manage encrypted network traffic using spoofed addresses

Inventors: Paul Michael Martini (San Diego, CA); Peter Anthony Martini (San Diego, CA)
Assignee: iboss, Inc.
H04L63/0428H04L61/1511H04L63/0236H04L63/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,596,217
App. No.
14/201,607
Granted
Mar 14, 2017
Kind
B2
Abstract

Methods and systems for managing encrypted network traffic using spoofed addresses. One example method includes receiving a request to resolve a domain name; determining that the domain name is included in a predetermined set of domain names; associating a spoofed address with the domain name; sending a response to the request to resolve the domain name including the spoofed address; receiving a secure request for a resource, the secure request directed to the spoofed address; identifying a user identity associated with the secure request; determining that the secure request is directed to the domain name based on the association between the spoofed address and the domain name; and selectively decrypting and/or blocking the secure request based at least in part on determining that the secure request is directed to the domain name and based at least in part on the user identity associated with the secure request.

Claims (109)

1. A computer-implemented method executed by one or more processors, the method comprising:

receiving a request to resolve a particular domain name;

in response to receiving the request to resolve a particular domain name, determining that secure requests directed to the particular domain name cannot be distinguished from secure requests directed to at least one other domain name based on a target address associated with each secure request;

in response to receiving the request to resolve a particular domain name and to determining that the secure requests directed to the particular domain name cannot be distinguished from the secure requests directed to the at least one other domain name, uniquely associating a particular spoofed address with the particular domain name, wherein the particular spoofed address uniquely identifies the particular domain name after it is associated, and wherein the particular spoofed address identifies a different network location than a real address corresponding to the particular domain name;

sending a response to the request to resolve the particular domain name, the response including the particular spoofed address associated with the particular domain name;

receiving a secure request directed to the particular spoofed address associated with the particular domain name;

identifying a user identity associated with the secure request based on the secure request without decrypting the secure request;

determining that the secure request is directed to the particular domain name based on the unique association between the particular spoofed address and the particular domain name without decrypting the secure request; and

selectively decrypting the secure request based at least in part on determining that the secure request is directed to the particular domain name and based at least in part on the user identity associated with the secure request.

2. The method of claim 1 , wherein the particular spoofed address includes an internet protocol (IP) address, receiving the request to resolve the particular domain name includes receiving a Domain Name System (DNS) request, and sending the response to the request to resolve the particular domain name includes sending a DNS response.

3. The method of claim 1 , wherein selectively decrypting the secure request comprises:

determining that the secure request should be decrypted based at least in part on one or more rules; and

decrypting the secure request to generate decrypted information.

4. The method of claim 3 , further comprising:

inspecting the decrypted information;

determining that the secure request should be forwarded based at least in part on inspecting the decrypted information and at least in part on the one or more rules; and

forwarding the secure request to an address associated with the particular domain name, the address being different than the particular spoofed address.

5. The method of claim 4 , wherein forwarding the secure request comprises:

re-encrypting the secure request; and

sending the secure request to the address associated with the particular domain name.

6. The method of claim 3 , further comprising:

inspecting the decrypted information;

determining that the secure request should be forwarded based at least in part on inspecting the decrypted information and at least in part on the one or more rules;

modifying the decrypted information based at least in part on the one or more rules;

encrypting the decrypted information to produce a second secure request; and

forwarding the second secure request to an address associated with the particular domain name, the address being different than the particular spoofed address.

7. The method of claim 3 , further comprising:

inspecting the decrypted information;

determining that the secure request should be blocked based at least in part on inspecting the decrypted information and at least in part on the one or more rules; and

blocking the secure request.

8. The method of claim 7 , wherein blocking the secure request includes sending a redirect response to the secure request, the redirect response including an address associated with a block notification page.

9. The method of claim 1 , wherein receiving the secure request comprises:

establishing a first secure connection with a sender of the secure request; and

establishing a second secure connection with an address associated with a resource identified by the secure request after establishing the first secure connection with the sender.

10. The method of claim 1 , wherein receiving the secure request comprises:

establishing a first secure connection with an address associated with a resource identified by the secure request; and

establishing a second secure connection with a sender of the secure request after establishing the first secure connection with the address associated with the resource.

11. The method of claim 1 , wherein selectively decrypting the secure request comprises:

determining that the secure request should not be decrypted based at least in part on one or more rules; and

forwarding the secure request to an address associated with the particular domain name, the address being different than the particular spoofed address.

12. The method of claim 1 , wherein the particular domain name is a first domain name, the method further comprising:

receiving a request to resolve a second domain name different than the first domain name;

determining that secure requests directed to the second domain name can be distinguished from secure requests directed to other domain names based on a target address associated with each secure request; and

sending a response to the request to resolve the second domain name, the response including a real address corresponding to the second domain name.

13. The method of claim 1 , further comprising:

receiving a second request to resolve the particular domain name;

determining that the particular domain name is associated with the particular spoofed address; and

sending a response to the second request to resolve the particular domain name, the response including the particular spoofed address.

14. The method of claim 1 , wherein the particular spoofed address includes an internet protocol (IP) address and an IP port.

15. The method of claim 1 , wherein receiving the secure request includes receiving a request according to Hypertext Transfer Protocol Secure (HTTPS).

16. The method of claim 1 , further comprising associating the user identity with the secure request upon receiving the secure request.

17. The method of claim 16 , further comprising:

associating the user identity with a network address before receiving the secure request;

determining that the secure request was sent from the network address upon receiving the secure request; and

associating the user identity associated with the network address to the secure request.

18. The method of claim 1 , wherein receiving the secure request includes receiving the user identity.

19. A computer-implemented method executed by one or more processors, the method comprising:

receiving a request to resolve a particular domain name;

in response to receiving the request to resolve a particular domain name, determining that secure requests directed to the particular domain name cannot be distinguished from secure requests directed to at least one other domain name based on a target address associated with each secure request;

in response to receiving the request to resolve a particular domain name and to determining that the secure requests directed to the particular domain name cannot be distinguished from the secure requests directed to the at least one other domain name, uniquely associating a particular spoofed address with the particular domain name, wherein the particular spoofed address uniquely identifies the particular domain name after it is associated, and wherein the particular spoofed address identifies a different network location than a real address corresponding to the particular domain name;

sending a response to the request to resolve the particular domain name, the response including the particular spoofed address associated with the particular domain name;

receiving a secure request directed to the particular spoofed address associated with the particular domain name;

identifying a user identity associated with the secure request based on the secure request without decrypting the secure request;

determining that the secure request is directed to the particular domain name based on the unique association between the particular spoofed address and the particular domain name without decrypting the secure request; and

selectively blocking the secure request based at least in part on determining that the secure request is directed to the particular domain name and based at least in part on the user identity associated with the secure request.

20. The method of claim 19 , wherein the particular spoofed address includes an internet protocol (IP) address, receiving the request to resolve the particular domain name includes receiving a Domain Name System (DNS) request, and sending the response to the request to resolve the particular domain name includes sending a DNS response.

21. The method of claim 19 , wherein the particular domain name is a first domain name, the method further comprising:

receiving a request to resolve a second domain name different than the first domain name;

determining that secure requests directed to the second domain name can be distinguished from secure requests directed to other domain names based on a target address associated with each secure request; and

sending a response to the request to resolve the second domain name, the response including a real address associated with the second domain name.

22. The method of claim 19 , further comprising:

receiving a second request to resolve the particular domain name;

determining that the particular domain name is associated with the particular spoofed address; and

sending a response to the second request to resolve the particular domain name, the response including the particular spoofed address.

23. The method of claim 19 , wherein selectively blocking the secure request includes:

determining that the secure request should be blocked based at least in part on a rule associated with the particular domain name; and

blocking the secure request.

24. The method of claim 19 , wherein selectively blocking the secure request includes:

determining that the secure request should not be blocked based at least in part on a rule associated with the particular domain name; and

forwarding the secure request to an address associated with the particular domain name and different than the particular spoofed address.

25. The method of claim 19 , wherein receiving the secure request includes receiving a request according to Hypertext Transfer Protocol Secure (HTTPS).

26. The method of claim 19 , further comprising associating the user identity with the secure request upon receiving the secure request.

27. The method of claim 26 , further comprising:

associating the user identity with a network address before receiving the secure request;

determining that the secure request was sent from the network address upon receiving the secure request; and

associating the user identity associated with the network address to the secure request.

28. The method of claim 19 , wherein receiving the secure request includes receiving the user identity.

29. A system comprising:

memory for storing data; and

one or more processors operable to perform operations comprising:

receiving a request to resolve a particular domain name;

in response to receiving the request to resolve a particular domain name, determining that secure requests directed to the particular domain name cannot be distinguished from secure requests directed to at least one other domain name based on a target address associated with each secure request;

in response to receiving the request to resolve a particular domain name and to determining that the secure requests directed to the particular domain name cannot be distinguished from the secure requests directed to the at least one other domain name, uniquely associating a particular spoofed address with the particular domain name, wherein the particular spoofed address uniquely identifies the particular domain name after it is associated, and wherein the particular spoofed address identifies a different network location than a real address corresponding to the particular domain name;

sending a response to the request to resolve the particular domain name, the response including the particular spoofed address associated with the particular domain name;

receiving a secure request directed to the particular spoofed address associated with the particular domain name;

identifying a user identity associated with the secure request based on the secure request without decrypting the secure request;

determining that the secure request is directed to the particular domain name based on the unique association between the particular spoofed address and the particular domain name without decrypting the secure request; and

selectively decrypting the secure request based at least in part on determining that the secure request is directed to the particular domain name and based at least in part on the user identity associated with the secure request.

30. A system comprising:

memory for storing data; and

one or more processors operable to perform operations comprising:

receiving a request to resolve a particular domain name;

in response to receiving the request to resolve a particular domain name, determining that secure requests directed to the particular domain name cannot be distinguished from secure requests directed to at least one other domain name based on a target address associated with each secure request;

in response to receiving the request to resolve a particular domain name and to determining that the secure requests directed to the particular domain name cannot be distinguished from the secure requests directed to the at least one other domain name, uniquely associating a particular spoofed address with the particular domain name, wherein the particular spoofed address uniquely identifies the particular domain name after it is associated, and wherein the particular spoofed address identifies a different network location than a real address corresponding to the particular domain name;

sending a response to the request to resolve the particular domain name, the response including the particular spoofed address associated with the particular domain name;

receiving a secure request directed to the particular spoofed address associated with the particular domain name;

identifying a user identity associated with the secure request based on the secure request without decrypting the secure request;

determining that the secure request is directed to the particular domain name based on the unique association between the particular spoofed address and the particular domain name without decrypting the secure request; and

selectively blocking the secure request based at least in part on determining that the secure request is directed to the particular domain name and based at least in part on the user identity associated with the secure request.

Assignments (6)
SUPPLEMENTAL INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Dec 28, 2023
From: IBOSS, INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 066158/0266 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Dec 28, 2023
From: IBOSS, INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB
Reel/Frame 066158/0219 →
RELEASE OF SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Dec 12, 2023
From: SILICON VALLEY BANK, A DIVISION OF FIRST-CITIZENS BANK TRUST COMPANY
To: IBOSS, INC.
Reel/Frame 066140/0480 →
SECURITY INTEREST Recorded Sep 19, 2022
From: IBOSS, INC.
To: SILICON VALLEY BANK
Reel/Frame 061463/0331 →
SECURITY INTEREST Recorded Dec 16, 2020
From: IBOSS, INC.
To: SILICON VALLEY BANK
Reel/Frame 054789/0680 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 25, 2014
From: MARTINI, PAUL MICHAEL; MARTINI, PETER ANTHONY
To: IBOSS, INC.
Reel/Frame 032756/0160 →
Continuity (1)
Related Publication 20150256516A1 · Sep 10, 2015