IP Library Granted Patent US 9,699,151
Granted Patent B2
US 9,699,151 · App. 15/201,260 · Granted Jul 4, 2017

Manage encrypted network traffic using spoofed addresses

Inventor: Paul Michael Martini (San Diego, CA)
Assignee: iboss, Inc.
H04L63/0464H04L61/1511H04L61/2007H04L63/0236H04L63/0823H04L63/168H04L63/20H04L67/02H04L69/326H04W76/02
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,699,151
App. No.
15/201,260
Granted
Jul 4, 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, the response including the spoofed address; receiving a secure request for a resource, the secure request directed to the spoofed address; 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 the secure request based at least in part on determining that the secure request is directed to the domain name.

Claims (71)

1. A computer-implemented method for determining a destination for secure web traffic executed by one or more processors, the method comprising:

receiving a request to resolve a domain name from a client;

determining that the domain name corresponds to a real Internet Protocol (IP) address that also corresponds to at least one other domain name, wherein the real IP address corresponds to a first network location hosting a particular resource;

in response to determining that the domain name corresponds to the real IP address that also corresponds to at least one other domain name, creating an association between a spoofed IP address and the domain name, wherein the spoofed IP address is different than the real IP address corresponding to the domain name and corresponds to a second network location different than the first network location, and wherein the associated spoofed IP address uniquely identifies the domain name;

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

receiving, at the second network location corresponding to the spoofed IP address, an encrypted request for the particular resource hosted at the first network location, the encrypted request directed to the spoofed IP address associated with the domain name;

determining that the encrypted request is directed to the domain name based on the association between the spoofed IP address and the domain name, wherein the determination is performed without decrypting the encrypted request; and

selectively blocking the encrypted request, or

selectively decrypting the encrypted request, examining the decrypted contents of the encrypted request, and determining how to handle the encrypted request based on examining of the decrypted contents,

wherein selectively blocking or decrypting the encrypted request is based at least in part on determining that the encrypted request is directed to the domain name.

2. The method of claim 1 , wherein selectively decrypting the encrypted request comprises:

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

decrypting the encrypted request to generate decrypted information.

3. The method of claim 2 , wherein determining how to handle the encrypted request comprises:

inspecting the decrypted information;

determining that the encrypted 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 encrypted request to the real IP address associated with the domain name.

4. The method of claim 3 , wherein forwarding the encrypted request comprises:

re-encrypting the encrypted request; and

sending the encrypted request to the real IP address associated with the domain name.

5. The method of claim 2 , wherein determining how to handle the encrypted request comprises:

inspecting the decrypted information;

determining that the encrypted 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 encrypted request; and

forwarding the encrypted request to the real IP address associated with the domain name.

6. The method of claim 2 , wherein determining how to handle the encrypted request comprises:

inspecting the decrypted information;

determining that the encrypted 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 encrypted request.

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

8. The method of claim 1 , wherein receiving the encrypted request for the particular resource comprises:

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

establishing a second secure connection with the first network location hosting the particular resource identified by the encrypted request after establishing the first secure connection with the sender.

9. The method of claim 1 , wherein receiving the encrypted request for the particular resource comprises:

establishing a first secure connection with the first network location hosting the particular resource identified by the encrypted request; and

establishing a second secure connection with a sender of the encrypted request after establishing the first secure connection with the first network location.

10. The method of claim 1 , wherein selectively decrypting the encrypted request comprises:

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

forwarding the encrypted request to the real IP address associated with the domain name.

11. The method of claim 1 , wherein the 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 the second domain name corresponds to a real Internet Protocol (IP) address that does not also correspond to another domain name; and sending a response to the request to resolve the second domain name, the response including the real IP address corresponding to the second domain name.

12. The method of claim 1 , wherein the request to resolve the domain name is a first request, and the method further comprising:

after receiving the first request, receiving a second request to resolve the domain name;

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

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

13. The method of claim 1 , wherein the spoofed IP address includes an IP port.

14. The method of claim 1 , wherein receiving the encrypted request for the particular resource includes receiving a request according to Hypertext Transfer Protocol Secure (HTTPS).

15. A non-transitory, computer-readable medium storing instructions operable when executed to cause at least one processor to perform operations comprising:

receiving a request to resolve a domain name from a client;

determining that the domain name corresponds to a real Internet Protocol (IP) address that also corresponds to at least one other domain name, wherein the real IP address corresponds to a first network location hosting a particular resource;

in response to determining that the domain name corresponds to the real IP address that also corresponds to at least one other domain name, creating an association between a spoofed IP address and the domain name, wherein the spoofed IP address is different than the real IP address corresponding to the domain name and corresponds to a second network location different than the first network location, and wherein the associated spoofed IP address uniquely identifies the domain name;

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

receiving, at the second network location corresponding to the spoofed IP address, an encrypted request for the particular resource hosted at the first network location, the encrypted request directed to the spoofed IP address associated with the domain name;

determining that the encrypted request is directed to the domain name based on the association between the spoofed IP address and the domain name, wherein the determination is performed without decrypting the encrypted request; and

selectively blocking the encrypted request, or

selectively decrypting the encrypted request, examining the decrypted contents of the encrypted request, and determining how to handle the encrypted request based on examining of the decrypted contents,

wherein selectively blocking or decrypting the encrypted request is based at least in part on determining that the encrypted request is directed to the domain name.

16. A system comprising:

memory for storing data; and

one or more processors operable to perform operations comprising:

receiving a request to resolve a domain name from a client;

determining that the domain name corresponds to a real Internet Protocol (IP) address that also corresponds to at least one other domain name, wherein the real IP address corresponds to a first network location hosting a particular resource;

in response to determining that the domain name corresponds to the real IP address that also corresponds to at least one other domain name, creating an association between a spoofed IP address and the domain name, wherein the spoofed IP address is different than the real IP address corresponding to the domain name and corresponds to a second network location different than the first network location, and wherein the associated spoofed IP address uniquely identifies the domain name;

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

receiving, at the second network location corresponding to the spoofed IP address, an encrypted request for the particular resource hosted at the first network location, the encrypted request directed to the spoofed IP address associated with the domain name;

determining that the encrypted request is directed to the domain name based on the association between the spoofed IP address and the domain name, wherein the determination is performed without decrypting the encrypted request; and

selectively blocking the encrypted request, or

selectively decrypting the encrypted request, examining the decrypted contents of the encrypted request, and determining how to handle the encrypted request based on examining of the decrypted contents,

wherein selectively blocking or decrypting the encrypted request is based at least in part on determining that the encrypted request is directed to the domain name.

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 Feb 15, 2017
From: MARTINI, PAUL MICHAEL
To: IBOSS, INC.
Reel/Frame 041266/0359 →
Continuity (2)
Continuation 14085661 · Nov 20, 2013
Related Publication 20160315919A1 · Oct 27, 2016