IP Library Granted Patent US 10,171,493
Granted Patent B2
US 10,171,493 · App. 15/205,298 · Granted Jan 1, 2019

Method and system to dynamically obfuscate a web services interface

Inventors: Partha Ghosh (Pune, IN); Vivek Bawge (Magarpatta, IN)
Assignee: Sears Brands, L.L.C.
H04L63/1458H04L67/02H04L67/141H04L67/42H04L2463/102H04L2463/121
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,171,493
App. No.
15/205,298
Granted
Jan 1, 2019
Kind
B2
Abstract

The present application relates to the handling of what are generally referred to as denial of service (DoS) attacks. More specifically, the present application relates to a method and system for protecting one or more on-line Web service application servers from DoS and/or distributed DoS (DDoS) attacks.

Claims (59)

1. A method for operating a system that uses a dynamically generated web services interface to protect a processor of service requests from attacks received via a data communication network, the method comprising:

receiving, by web server circuitry, a first service request from a client system via the data communication network, wherein the first service request comprises an identifier of the client system, a service identifier, and a service key;

producing, by web service protection circuitry coupled to the web server circuitry, a client date and time by deciphering a portion of the service identifier using the identifier of the client system;

determining, by the web service protection circuitry, whether the first service request is an initial service request received by the web server circuitry from the client system;

if it is determined that the first service request is the initial service request received from the client system, identifying, by the web service protection circuitry, the client system as an authorized client system if the produced client date and time matches a default date and time;

if it is determined that the first service request is not the initial service request received from the client system, identifying, by the web service protection circuitry, the client system as an authorized client system if the produced client date and time matches a stored date and time corresponding to receipt of a previous service request received from the client system; and

if the client is identified as an authorized client system:

sending a second service request, by the web server circuitry to application server circuitry, wherein the second service request comprises a service name portion and the service key; and

forwarding, by the web server circuitry to the client system, a response of the application server circuitry to the second service request.

2. The method according to claim 1 , wherein the service identifier comprises a service name portion and a dynamic key portion.

3. The method according to claim 2 , wherein the service name portion identifies a service to be performed for the client system by the application server circuitry.

4. The method according to claim 2 , wherein deciphering a portion of the service identifier comprises deciphering the dynamic key portion of the service identifier using the identifier of the client system to produce the client date and time.

5. The method according to claim 1 , wherein the service identifier is not a valid service name portion accepted by the application server circuitry.

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

sending an error indication, by the web server circuitry to the client system, if the client system is not identified as an authorized client system.

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

discarding the first service request, by the web server circuitry, if the client system is not identified as an authorized client system.

8. The method according to claim 1 , wherein sending the second service request comprises:

placing in storage coupled to the web server circuitry, the date and time corresponding to receipt of the first service request from the client system, in association with the identifier of the client system.

9. A non-transitory computer readable medium having a plurality of code sections, each code section comprising a plurality of instructions executable by web server circuitry to cause the web server circuitry to perform a method comprising:

receiving, by web server circuitry, a first service request from a client system via the data communication network, wherein the first service request comprises an identifier of the client system, a service identifier, and a service key;

producing, by web service protection circuitry coupled to the web server circuitry, a client date and time by deciphering a portion of the service identifier using the identifier of the client system;

determining, by the web service protection circuitry, whether the first service request is an initial service request received by the web server circuitry from the client system;

if it is determined that the first service request is the initial service request received from the client system, identifying, by the web service protection circuitry, the client system as an authorized client system if the produced client date and time matches a default date and time;

if it is determined that the first service request is not the initial service request received from the client system, identifying, by the web service protection circuitry, the client system as an authorized client system if the produced client date and time matches a stored date and time corresponding to receipt of a previous service request received from the client system; and

if the client is identified as an authorized client system:

sending a second service request, by the web server circuitry to application server circuitry, wherein the second service request comprises a service name portion and the service key; and

forwarding, by the web server circuitry to the client system, a response of the application server circuitry to the second service request.

10. The non-transitory computer readable medium according to claim 9 , wherein the service identifier comprises a service name portion and a dynamic key portion.

11. The non-transitory computer readable medium according to claim 10 , wherein the service name portion identifies a service to be performed for the client system by the application server circuitry.

12. The non-transitory computer readable medium according to claim 10 , wherein deciphering a portion of the service identifier comprises deciphering the dynamic key portion of the service identifier using the identifier of the client system to produce the client date and time.

13. The non-transitory computer readable medium according to claim 9 , wherein the service identifier is not a valid service name portion accepted by the application server circuitry.

14. The non-transitory computer readable medium according to claim 9 , further comprising:

sending an error indication, by the web server circuitry to the client system, if the client system is not identified as an authorized client system.

15. The non-transitory computer readable medium according to claim 9 , further comprising:

discarding the first service request, by the web server circuitry, if the client system is not identified as an authorized client system.

16. The non-transitory computer readable medium according to claim 9 , wherein sending the second service request comprises:

placing in storage coupled to the web server circuitry, the date and time corresponding to receipt of the first service request from the client system, in association with the identifier of the client system.

17. A system that uses a dynamically generated web services interface to protect a second system for processing service requests from attacks received via a data communication network, the system comprising:

web server circuitry and web service protection circuitry, wherein:

the web server circuitry is operable to receive a first service request from a client system via the data communication network;

the first service request comprises an identifier of the client system, a service identifier, and a service key;

the web service protection circuitry is operable to produce a client date and time by deciphering a portion of the service identifier using the identifier of the client system;

the web service protection circuitry is operable to determine whether the first service request is an initial service request received by the web service circuitry from the client system;

the web service protection circuitry is operable to, if it is determined that the first service request is the initial service request received from the client system identify the client system as an authorized client system if the produced client date and time matches a default date and time;

the web service protection circuitry is operable to, if it is determined that the first service request is not the initial service request received from the client system, identify the client system as an authorized client system if the produced client date and time matches a stored date and time corresponding to receipt of a previous service request received from the client system;

the web server circuitry is operable to, if the client is identified as an authorized client system:

send a second service request to the application server circuitry, wherein the second service request comprises a service name portion and the service key; and

forward to the client system, a response of the application server circuitry to the second service request.

18. The system according to claim 17 , wherein the service identifier comprises a service name portion and a dynamic key portion.

19. The system according to claim 18 , wherein the service name portion identifies a service to be performed for the client system by the application server circuitry.

20. The system according to claim 18 , wherein deciphering a portion of the service identifier comprises deciphering the dynamic key portion of the service identifier using the identifier of the client system to produce the client date and time.

21. The system according to claim 17 , wherein the service identifier is not a valid service name portion accepted by the application server circuitry.

22. The system according to claim 17 , wherein the web server circuitry is further operable to:

send an error indication to the client system, if the client system is not identified as an authorized client system.

23. The system according to claim 17 , wherein the web server circuitry is further operable to:

discard the first service request, if the client system is not identified as an authorized client system.

24. The system according to claim 17 , wherein the send of the second service request comprises:

placement in storage coupled to the web server circuitry, the date and time corresponding to receipt of the first service request from the client system, in association with the identifier of the client system.

Assignments (16)
SECURITY INTEREST Recorded May 7, 2021
From: TRANSFORM SR BRANDS LLC
To: CANTOR FITZGERALD SECURITIES
Reel/Frame 056179/0863 →
SECURITY INTEREST Recorded May 15, 2020
From: TRANSFORM SR BRANDS LLC
To: JPP, LLC
Reel/Frame 053467/0062 →
RELEASE OF SECURITY INTEREST Recorded Mar 18, 2020
From: CITIBANK, N.A., AS AGENT
To: TRANSFORM SR BRANDS LLC
Reel/Frame 052188/0176 →
RELEASE OF SECURITY INTEREST Recorded Mar 17, 2020
From: CANTOR FITZGERALD SECURITIES
To: TRANSFORM SR BRANDS LLC
Reel/Frame 052184/0782 →
RELEASE OF SECURITY INTEREST Recorded Mar 17, 2020
From: BANK OF AMERICA, N.A.
To: TRANSFORM SR BRANDS LLC
Reel/Frame 052183/0879 →
SECURITY INTEREST Recorded Sep 20, 2019
From: TRANSFORM SR BRANDS LLC
To: CANTOR FITZGERALD SECURITIES
Reel/Frame 050451/0309 →
RELEASE OF SECURITY INTEREST Recorded Apr 22, 2019
From: CANTOR FITZGERALD SECURITIES, AS AGENT
To: TRANSFORM SR BRANDS LLC
Reel/Frame 049284/0149 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 27, 2019
From: SEARS BRANDS, L.L.C.
To: TRANSFORM SR BRANDS LLC
Reel/Frame 048710/0182 →
SECURITY INTEREST Recorded Feb 25, 2019
From: TRANSFORM SR BRANDS LLC
To: BANK OF AMERICA, N.A.
Reel/Frame 048433/0001 →
SECURITY INTEREST Recorded Feb 25, 2019
From: TRANSFORM SR BRANDS LLC
To: CITIBANK, N.A.
Reel/Frame 048424/0291 →
RELEASE OF SECURITY INTEREST Recorded Feb 14, 2019
From: BANK OF AMERICA, N.A.
To: SEARS BRANDS, L.L.C.
Reel/Frame 048351/0185 →
SECURITY INTEREST Recorded Feb 12, 2019
From: TRANSFORM SR BRANDS LLC
To: CANTOR FITZGERALD SECURITIES, AS AGENT
Reel/Frame 048308/0275 →
RELEASE OF SECURITY INTEREST Recorded Feb 12, 2019
From: CANTOR FITZGERALD SECURITIES
To: SEARS BRANDS, L.L.C.
Reel/Frame 048321/0093 →
SECURITY INTEREST Recorded Dec 4, 2018
From: SEARS BRANDS, LLC
To: BANK OF AMERICA, N.A.
Reel/Frame 048325/0422 →
SECURITY INTEREST Recorded Nov 30, 2018
From: SEARS BRANDS, L.L.C.
To: CANTOR FITZGERALD SECURITIES
Reel/Frame 047688/0843 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 8, 2016
From: GHOSH, PARTHA; BAWGE, VIVEK
To: SEARS BRANDS, L.L.C.
Reel/Frame 039107/0895 →
Priority Claims (1)
IN 201611007792 · Mar 5, 2016 · national
Continuity (1)
Related Publication 20170257392A1 · Sep 7, 2017