IP Library Granted Patent US 10,681,012
Granted Patent B2
US 10,681,012 · App. 15/793,671 · Granted Jun 9, 2020

Methods and systems for deep learning based API traffic security

Inventors: Udayakumar Subbarayan (Bangalore, IN); Bernard Harguindeguy (Atherton, CA); Anoop Krishnan Gopalakrishnan (Bangalore, IN); Nagabhushana Angadi (Bengaluru, IN); Ashwani Kumar (Bengaluru, IN); Santosh Sahu (Bangalore, IN); Abdu Raheem Poonthiruthi (Bangalore, IN); Avinash Kumar Sahu (Bangalore, IN); Yasar Kundottil (Bangalore, IN)
Assignee: Ping Identity Corporation
H04L63/0281G06F21/55G06F21/554G06F21/6281G06N20/00H04L63/02H04L63/04H04L63/0807H04L63/0876H04L63/1425H04L63/1458H04L63/1491
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,681,012
App. No.
15/793,671
Granted
Jun 9, 2020
Kind
B2
Abstract

The present invention relates to the field of networking and API/application security. In particular, the invention is directed towards methods, systems and computer program products for deep learning based API traffic analysis and network security. The invention provides an automated approach to threat and/or attack detection by machine learning based accumulation and/or interpretation of various API/application traffic patterns, identifying and mapping characteristics of normal traffic for each API, and thereafter identifying any deviations from the normal traffic parameter baselines, which deviations may be classified as anomalies or attacks.

Claims (78)

1. A network gateway configured for securing a plurality of Application Programming Interfaces (APIs) implemented on a plurality of servers, the network gateway comprising:

a processor configured to:

receive a call to a first API from the plurality of APIs and implemented on a first server from the plurality of servers, the first API being associated with an API class;

receive a call to a second API from the plurality of APIs and implemented on a second server from the plurality of servers and different from the first server, the second API being associated with the API class;

generate an anomaly detection model for the API class based on parameter data extracted from the call to the first API and parameter data extracted from the call to the second API, wherein:

selection of parameter data for generating the anomaly detection model for the API class is based on API configuration information corresponding to the first API and API configuration information corresponding to the second API; and

the generated anomaly detection model includes one or more traffic parameter baseline values defined based on traffic parameter data corresponding to network traffic that is compliant with a prescribed network security policy;

analyze traffic parameter data corresponding to a data packet directed to the first API for identifying deviations between the analyzed traffic parameter data and the one or more traffic parameter baseline values included within the generated anomaly detection model; and

route the data packet to the first server based on an output of said analysis of traffic parameter data and based on identifying the data packet as being associated with the first API.

2. The network gateway as claimed in claim 1 , wherein responsive to identifying a deviation between the analyzed traffic parameter data and the one or more traffic parameter baseline values, discarding a client message directed to the first API without forwarding said client message to said first API.

3. The network gateway as claimed in claim 1 , wherein the anomaly detection model is a first anomaly detection model, the processor is further configured to:

receive a call to a third API from the plurality of APIs;

generate a second anomaly detection model based on parameter data extracted from the call to the third API, wherein:

selection of parameter data for generating the second anomaly detection model is based on API configuration information corresponding to the third API, said API configuration information corresponding to the third API is different from the API configuration information corresponding to the first API;

the generated second anomaly detection model includes one or more traffic parameter baseline values defined based on traffic parameter data corresponding to network traffic that is compliant with a prescribed network security policy; and

at least one traffic parameter baseline value based on traffic parameter data included within the second anomaly detection model is different from at least one corresponding traffic parameter baseline value based on traffic parameter data included within the first anomaly detection model.

4. The network gateway as claimed in claim 3 , wherein the processor is configured to respond to an event trigger for identifying an event state associated with an API selected from among the first API and the third API, and wherein identifying said event state comprises:

identifying one or more deviations between data extracted from traffic data corresponding to the selected API and one or more traffic parameter baseline values defined by an anomaly detection model corresponding to the selected API; and

selecting an event state from a plurality of event states, based on the identified one or more deviations.

5. The network gateway as claimed in claim 1 , wherein the anomaly detection model is one of a single dimensional model or a multi-dimensional model.

6. The network gateway as claimed in claim 1 , wherein the anomaly detection model is generated based on at least one of one or more histogram techniques, one or more mixture models, or one or more Gaussian models.

7. The network gateway as claimed in claim 4 , wherein the second anomaly detection model is one of a single dimensional model or a multi-dimensional model.

8. The network gateway as claimed in claim 4 , wherein the second anomaly detection model is generated based on at least one of one or more histogram techniques, one or more mixture models, or one or more Gaussian models.

9. The network gateway as claimed in claim 1 , wherein:

analysis of traffic parameter data corresponding to network traffic directed to the first API or the second API comprises identifying deviations between the analyzed traffic parameter data and the one or more traffic parameter baseline values included within the anomaly detection model.

10. A network gateway configured for securing a plurality of Application Programming Interfaces (APIs) implemented on a plurality of servers, the network gateway comprising:

a processor configured to:

receive an event trigger for generation of a first anomaly detection model corresponding to an API class associated with a first API from the plurality of APIs and a second API from the plurality of APIs, the first API implemented on a first server from the plurality of servers and the second API implemented on a second server from the plurality of servers;

identify one or more API parameters corresponding to the first API and one or more API parameters corresponding to the second API;

parse an anomaly detection model database to identify a second anomaly detection model having API parameters that match the one or more API parameters corresponding to the first API and the one or more API parameters corresponding to the second API;

responsive to identifying the second anomaly detection model, generate the first anomaly detection model based on the identified second anomaly detection model; and

route a data packet to the first server based on an analysis of the data packet with respect to the first anomaly detection model and based on identifying the data packet as being associated with the first API.

11. The network gateway as claimed in claim 10 , wherein the API parameters include at least one of API type, API function, API class or API category.

12. A method for securing one or more Application Programming Interfaces (APIs) implemented on a plurality of servers, the method comprising:

receiving a call to a first API from the plurality of APIs and implemented on a first server from the plurality of servers, the first API being associated with an API class;

receiving a call to a second API from the plurality of APIs and implemented on a second server from the plurality of servers and different from the first server, the second API being associated with the API class;

generating an anomaly detection model for the API class based on parameter data extracted from the call to the first API and parameter data extracted from the call to the second API, wherein:

selection of parameter data for generating the anomaly detection model for the API class is based on API configuration information corresponding to the first API and API configuration information corresponding to the second API; and

the generated anomaly detection model includes one or more traffic parameter baseline values defined based on traffic parameter data corresponding to network traffic that is compliant with a prescribed network security policy;

analyzing traffic parameter data corresponding to a data packet directed to the first API for identifying deviations between the analyzed traffic parameter data and the one or more traffic parameter baseline values included within the generated first anomaly detection model; and

route the data packet to the first server based on an output of said analysis of traffic parameter data and based on identifying the data packet as being associated with the first API.

13. The method as claimed in claim 12 , wherein responsive to identifying a deviation between the analyzed traffic parameter data and the one or more traffic parameter baseline values, discarding a client message directed to the first API without forwarding said client message to said first API.

14. The method as claimed in claim 12 , wherein the anomaly detection model is a first anomaly detection model, the method further comprising the steps of:

receiving a call to a third API from the plurality of APIs; and

generating a second anomaly detection model based on parameter data extracted from the call to the third API, wherein:

selection of parameter data for generating the second anomaly detection model is based on API configuration information corresponding to the third API, said API configuration information corresponding to the third API is different from the API configuration information corresponding to the first API;

the generated second anomaly detection model includes one or more traffic parameter baseline values defined based on traffic parameter data corresponding to network traffic that is compliant with a prescribed network security policy; and

at least one traffic parameter baseline value based on traffic parameter data included within the second anomaly detection model is different from at least one corresponding traffic parameter baseline value based on traffic parameter data included within the first anomaly detection model.

15. The method as claimed in claim 14 , further comprising responding to an event trigger for identifying an event state associated with an API selected from among the first API and the third API, and wherein identifying said event state comprises:

identifying one or more deviations between data extracted from traffic data corresponding to the selected API and one or more traffic parameter baseline values defined by an anomaly detection model corresponding to the selected API; and

selecting an event state from a plurality of event states, based on the identified one or more deviations.

16. The method as claimed in claim 12 , wherein the anomaly detection model is one of a single dimensional model or a multi-dimensional model.

17. The method as claimed in claim 12 , wherein the anomaly detection model is generated based on at least one of one or more histogram techniques, one or more mixture models, or one or more Gaussian models.

18. The method as claimed in claim 14 , wherein the second anomaly detection model is one of a single dimensional model or a multi-dimensional model.

19. The method as claimed in claim 14 , wherein the second anomaly detection model is generated based on at least one of one or more histogram techniques, one or more mixture models, or one or more Gaussian models.

20. The method as claimed in claim 12 , wherein:

analysis of traffic parameter data corresponding to network traffic directed to the first API or the second API comprises identifying deviations between the analyzed traffic parameter data and the one or more traffic parameter baseline values included within the anomaly detection model.

21. A method for securing a plurality of Application Programming Interfaces (APIs) implemented on a plurality of servers, the method comprising:

receiving an event trigger for generation of a first anomaly detection model corresponding to an API class associated with a first API from the plurality of APIs and a second API from the plurality of APIs, the first API implemented on a first server from the plurality of servers and the second API implemented on a second server from the plurality of servers;

identifying one or more API parameters corresponding to the first API and one or more API parameters corresponding to the second API;

parsing an anomaly detection model database to identify a second anomaly detection model having API parameters that match the one or more API parameters corresponding to the first API and the one or more API parameters corresponding to the second API;

responsive to identifying the second anomaly detection model, generating the first anomaly detection model based on the identified second anomaly detection model; and

routing a data packet to the first server based on an analysis of the data packet with respect to the first anomaly detection model and based on identifying the data packet as being associated with the first API.

22. The method as claimed in claim 21 , wherein the API parameters include at least one of API type, API function, API class or API category.

23. A computer program product for securing a plurality of Application Programming Interfaces (APIs) implemented on a plurality of servers, comprising a non-transitory computer readable medium having a computer readable program code embodiment therein, the computer readable program code comprising instructions for:

receiving a call to a first API from the plurality of APIs and implemented on a first server from the plurality of servers, the first API being associated with an API class;

receiving a call to a second API from the plurality of APIs and implemented on a second server from the plurality of servers and different from the first server, the second API being associated with the API class;

generating an anomaly detection model for the API class based on parameter data extracted from the call to the first API and parameter data extracted from the call to the second API, wherein:

selection of parameter data for generating the anomaly detection model for the API class is based on API configuration information corresponding to the first API and API configuration information corresponding to the second API; and

the generated anomaly detection model includes one or more traffic parameter baseline values defined based on traffic parameter data corresponding to network traffic that is compliant with a prescribed network security policy;

analyzing traffic parameter data corresponding to a data packet directed to the first API for identifying deviations between the analyzed traffic parameter data and the one or more traffic parameter baseline values include within the generated first anomaly detection model; and

routing the data packet to the first server based on an output of said analysis of traffic parameter data and based on identifying the data packet as being associated with the first API.

24. A computer program product for securing a plurality of Application Programming Interfaces (APIs) implemented on a plurality of servers, comprising a non-transitory computer readable medium having a computer readable program code embodiment therein, the computer readable program code comprising instructions for:

receiving an event trigger for generation of a first anomaly detection model corresponding to an API class associated with a first API from the plurality of APIs and a second API from the plurality of APIs, the first API implemented on a first server from the plurality of servers and the second API implemented on a second server from the plurality of servers;

identifying one or more API parameters corresponding to the first API and one or more API parameters corresponding to the second API;

parsing an anomaly detection model database to identify a second anomaly detection model having API parameters that match the one or more API parameters corresponding to the first API and the one or more API parameters corresponding to the second API;

responsive to identifying the second anomaly detection model generating the first anomaly detection model based on the identified second anomaly detection model; and

routing a data packet to the first server based on an analysis of the data packet with respect to the first anomaly detection model and based on identifying the data packet as being associated with the first API.

Assignments (10)
RELEASE OF SECURITY INTEREST AT R/F 61703/0988 Recorded Nov 14, 2025
From: BLUE OWL CAPITAL CORPORATION
To: PING IDENTITY CORPORATION
Reel/Frame 073570/0777 →
SECURITY INTEREST Recorded Nov 13, 2025
From: PING IDENTITY CORPORATION; PING IDENTITY INTERNATIONAL, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 073557/0093 →
RELEASE OF SECURITY INTEREST Recorded Oct 19, 2022
From: BANK OF AMERICA, N.A.
To: PING IDENTITY CORPORATION
Reel/Frame 061709/0527 →
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded Oct 18, 2022
From: PING IDENTITY CORPORATION
To: OWL ROCK CAPITAL CORPORATION, AS COLLATERAL AGENT
Reel/Frame 061703/0988 →
SECURITY INTEREST Recorded Nov 23, 2021
From: PING IDENTITY CORPORATION
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 058944/0687 →
RELEASE OF SECURITY INTEREST Recorded Nov 23, 2021
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: PING IDENTITY CORPORATION
Reel/Frame 058195/0557 →
PATENT SECURITY AGREEMENT Recorded Dec 12, 2019
From: PING IDENTITY CORPORATION
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 051271/0247 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 2, 2018
From: ELASTIC BEAM, LLC
To: PING IDENTITY CORPORATION
Reel/Frame 045693/0014 →
ENTITY CONVERSION Recorded Apr 12, 2018
From: ELASTIC BEAM INC.
To: ELASTIC BEAM, LLC
Reel/Frame 045932/0120 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 29, 2018
From: SUBBARAYAN, UDAYAKUMAR; HARGUINDEGUY, BERNARD; GOPALAKRISHNAN, ANOOP KRISHNAN; POONTHIRUTHI, ABDU RAHEEM; KUMAR, ASHWANI; ANGADI, NAGABHUSHANA; SAHU, SANTOSH; SAHU, AVINASH KUMAR; KUNDOTTIL, YASAR
To: ELASTIC BEAM, INC.
Reel/Frame 045390/0767 →
Priority Claims (1)
IN 201611036787 · Oct 26, 2016 · national
Continuity (1)
Related Publication 20180115578A1 · Apr 26, 2018
Cited By (9)
US 12,204,652 US 12,218,961 US 12,314,821 US 12,346,451 US 12,373,566 US 12,406,068 US 12,621,332 US 12,717,931 US 12,719,894