IP Library › Granted Patent US 11,063,921
Granted Patent B2
US 11,063,921 · App. 16/182,591 · Granted Jul 13, 2021

Extracting data from passively captured web traffic that is encrypted in accordance with an anonymous key agreement protocol

Inventors: Eswar Phani Kondapavuluri (Albany, CA); Kanwaldeep S. Bindra (Fremont, CA); Atul A. Waghmare (Pleasanton, CA)
Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATION
H04L63/061H04L63/0428H04L63/08H04W12/04H04W12/08
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,063,921
App. No.
16/182,591
Granted
Jul 13, 2021
Kind
B2
Abstract

Encrypted web traffic exchanged between a client device and a web server during a communication session and captured using a passive capture technique can be received. The encrypted web traffic can be encrypted using a shared secret generated for the communication session in accordance with an anonymous key agreement protocol. A TCP connection table, which includes a session identifier for the communication session, can be created for the communication session. At least one TCP connection can be built for the received encrypted web traffic using the TCP connection table. Using the session identifier, the shared secret can be accessed from a cache in which the shared secret is stored, at least temporarily, by the web server. Data from the encrypted web traffic can be extracted by using the shared secret to decrypt the encrypted web traffic. The extracted data can be stored to a data store.

Claims (48)

1. A method, comprising:

receiving encrypted web traffic exchanged between a client device and a web server during a communication session and captured using a passive capture technique, the encrypted web traffic being encrypted using a shared secret generated for the communication session in accordance with an anonymous key agreement protocol, wherein the shared secret is unique to the communication session;

creating a TCP connection table for the communication session and including in the TCP connection table a session identifier for the communication session;

building at least one TCP connection for the received encrypted web traffic using the TCP connection table;

using the session identifier, accessing the shared secret from a cache in which the shared secret is stored, at least temporarily, by the web server;

extracting, using a processor, data from the encrypted web traffic via the TCP connection by using the shared secret to decrypt the encrypted web traffic exchanged between the client device and the web server during the communication session; and

storing the extracted data to a data store.

2. The method of claim 1 , wherein the anonymous key agreement protocol is an Elliptic-curve Diffie-Hellman ephemeral (ECDHE) protocol.

3. The method of claim 1 , wherein the TCP connection table is used to separate out TCP packets from the received encrypted web traffic into respective TCP connections and maintain connection states of the TCP connections.

4. The method of claim 1 , wherein the session identifier used to access the shared secret from the cache is accessed from the TCP connection table.

5. The method of claim 1 , further comprising:

establishing a secure connection to the cache using the anonymous key agreement protocol;

wherein accessing the shared secret from the cache comprises querying the cache over the secure connection.

6. The method of claim 1 , wherein the web server establishes a secure connection to the cache using the anonymous key agreement protocol and communicates the shared secret to the cache over the secure connection.

7. The method of claim 1 , further comprising:

responsive to the communication session being terminated or responsive to determining that decryption of the encrypted web traffic is complete, initiating deletion of the shared secret from the cache.

8. A system, comprising:

a processor programmed to initiate executable operations comprising:

receiving encrypted web traffic exchanged between a client device and a web server during a communication session and captured using a passive capture technique, the encrypted web traffic being encrypted using a shared secret generated for the communication session in accordance with an anonymous key agreement protocol, wherein the shared secret is unique to the communication session;

creating a TCP connection table for the communication session and including in the TCP connection table a session identifier for the communication session;

building at least one TCP connection for the received encrypted web traffic using the TCP connection table;

using the session identifier, accessing the shared secret from a cache in which the shared secret is stored, at least temporarily, by the web server;

extracting data from the encrypted web traffic via the TCP connection by using the shared secret to decrypt the encrypted web traffic exchanged between the client device and the web server during the communication session; and

storing the extracted data to a data store.

9. The system of claim 8 , wherein the anonymous key agreement protocol is an Elliptic-curve Diffie-Hellman ephemeral (ECDHE) protocol.

10. The system of claim 8 , wherein the TCP connection table is used to separate out TCP packets from the received encrypted web traffic into respective TCP connections and maintain connection states of the TCP connections.

11. The system of claim 8 , wherein the session identifier used to access the shared secret from the cache is accessed from the TCP connection table.

12. The system of claim 8 , the executable operations further comprising:

establishing a secure connection to the cache using the anonymous key agreement protocol;

wherein accessing the shared secret from the cache comprises querying the cache over the secure connection.

13. The system of claim 8 , wherein the web server establishes a secure connection to the cache using the anonymous key agreement protocol and communicates the shared secret to the cache over the secure connection.

14. The system of claim 8 , the executable operations further comprising:

responsive to the communication session being terminated or responsive to determining that decryption of the encrypted web traffic is complete, initiating deletion of the shared secret from the cache.

15. A computer program product, comprising:

a computer readable storage medium having program code stored thereon, the program code executable by a data processing system to initiate operations including:

receiving encrypted web traffic exchanged between a client device and a web server during a communication session and captured using a passive capture technique, the encrypted web traffic being encrypted using a shared secret generated for the communication session in accordance with an anonymous key agreement protocol, wherein the shared secret is unique to the communication session;

creating a TCP connection table for the communication session and including in the TCP connection table a session identifier for the communication session;

building at least one TCP connection for the received encrypted web traffic using the TCP connection table;

using the session identifier, accessing the shared secret from a cache in which the shared secret is stored, at least temporarily, by the web server;

extracting data from the encrypted web traffic via the TCP connection by using the shared secret to decrypt the encrypted web traffic exchanged between the client device and the web server during the communication session; and

storing the extracted data to a data store.

16. The computer program product of claim 15 , wherein the anonymous key agreement protocol is an Elliptic-curve Diffie-Hellman ephemeral (ECDHE) protocol.

17. The computer program product of claim 15 , wherein the TCP connection table is used to separate out TCP packets from the received encrypted web traffic into respective TCP connections and maintain connection states of the TCP connections.

18. The computer program product of claim 15 , wherein the session identifier used to access the shared secret from the cache is accessed from the TCP connection table.

19. The computer program product of claim 15 , wherein the program code is executable by the data processing system to initiate operations further comprising:

establishing a secure connection to the cache using the anonymous key agreement protocol;

wherein accessing the shared secret from the cache comprises querying the cache over the secure connection.

20. The computer program product of claim 15 , wherein the web server establishes a secure connection to the cache using the anonymous key agreement protocol and communicates the shared secret to the cache over the secure connection.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 6, 2018
From: KONDAPAVULURI, ESWAR PHANI; BINDRA, KANWALDEEP S.; WAGHMARE, ATUL A.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 047428/0021 →
Continuity (1)
Related Publication 20200145396A1 · May 7, 2020