IP Library Granted Patent US 11,100,218
Granted Patent B2
US 11,100,218 · App. 16/015,980 · Granted Aug 24, 2021

Systems and methods for improving accuracy in recognizing and neutralizing injection attacks in computer services

Inventor: Kunal Anand (Marina Del Rey, CA)
Assignee: PREVOTY, INC.
G06F21/54G06F21/554H04L63/1416H04L63/1466G06F2221/031
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,100,218
App. No.
16/015,980
Granted
Aug 24, 2021
Kind
B2
Abstract

Systems and methods for analyzing SQL queries for constraint violations for injection attacks. Tokenizing a SQL query generates a token stream. A parse tree is constructed by iterating over lexical nodes of the token stream. The parse tree is compared to a SQL schema and access configuration for a database in order to analyze the SQL query for constraint violations. Evaluation flaws are also detected. A step-wise, bottom-up approach is employed to walk through the parse tree to detect types and to ascertain from those types whether the condition for SQL execution is static or dynamic. SQL request security engine logic refers to predetermined protective action data and takes the particular type of action specified by the predetermined protective action data. Security is further enhanced by limiting service of requests to requests of one or more specific, accepted data types. Each request is parsed into individual data elements, each an associated key-value pair. If the key is any data element of the request matches a predetermined allowed key, detection and neutralization of any injection attack in the associated value data of the data element is bypassed. A number of patterns that match information to be obscured in logs are established and any matching information is replaced with obscured data. When recording information to the logs, any data whose key is a predetermined masked key is replaced with obscured data.

Claims (21)

1. A method for adapting handing of injection attacks in requests for computer services, the method comprising:

receiving request data from a user that represents a service to be provided by a server computer;

parsing the request data into individual data elements, each data element comprising an associated key-value pair, as a parse tree of the user provided requested data;

comparing the parse tree of the user provided requested data to an SQL schema and access configurations to identify an injection attack, wherein the injection attack is identified when a key of the key-value pair does not match a predetermined allowed key;

modifying the data elements in the request data associated with the injection attack such that the request data is modified so as to render the injection attack inoperable.

2. The method of claim 1 wherein the method further comprises processing the request data as modified by taking action specified by the request data without taking any action specified by the injection attack no longer included by the request data as modified.

3. The method of claim 1 wherein determining whether the request data includes an injection attack includes determining that the request includes a cross-site scripting (XSS) attack.

4. The method of claim 1 , further comprising receiving protective action data that is generated in response to physical manipulation of one or more user input devices by a human user.

5. A non-transient computer-readable medium containing programming instructions for causing a computer to perform the method of:

receiving request data from a user that represents a service to be provided by a server computer;

parsing the request data into individual data elements, each data element comprising an associated key-value pair, as a parse tree of the user provided requested data;

comparing the parse tree of the user provided requested data to an SQL schema and access configurations to identify an injection attack, wherein the injection attack is identified when a key of the key-value pair does not match a predetermined allowed key;

modifying the data elements in the request data associated with the injection attack such that the request data is modified so as to render the injection attack inoperable.

6. The computer readable medium of claim 5 for further causing a computer to perform the method of processing the request data as modified by taking action specified by the request data without taking any action specified by the injection attack no longer included by the request data as modified.

7. The computer readable medium of claim 5 for further causing a computer to perform the method of determining whether the request data includes an injection attack to determine if the request includes a cross-site scripting (XSS) attack.

8. The computer readable medium of claim 5 for further causing a computer to perform the method of receiving protective action data that is generated in response to physical manipulation of one or more user input devices by a human user.

9. A method for adapting handing of injection attacks in requests for computer services, the method comprising:

receiving request data from a user that represents a service to be provided by a server computer;

parsing the request data into individual data elements, each data element comprising an associated key-value pair, as a parse tree of the user provided requested data;

comparing the parse tree of the user provided requested data to an SQL schema and access configurations to identify an injection attack, wherein the injection attack is identified when a key of the key-value pair does not match a predetermined allowed key; and

refusing the request that includes an injection attack, and refusing to process the request data.

Assignments (7)
RELEASE OF FIRST LIEN SECURITY INTEREST IN INTELLECTUAL PROPERTY RECORDED AT R/F 048077/0753 Recorded Dec 1, 2023
From: BANK OF AMERICA, N.A., AS AGENT
To: PREVOTY, INC.
Reel/Frame 065744/0045 →
RELEASE OF SECOND LIEN SECURITY INTEREST IN INTELLECTUAL PROPERTY RECORDED AT R/F 048077/0795 Recorded Dec 1, 2023
From: GOLDMAN SACH BANK USA, AS AGENT
To: PREVOTY, INC.
Reel/Frame 065744/0067 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 2, 2022
From: PREVOTY, INC.
To: IMPERVA, INC.
Reel/Frame 059786/0372 →
CHANGE OF ASSIGNEE ADDRESS Recorded Feb 23, 2022
From: PREVOTY, INC.
To: PREVOTY, INC.
Reel/Frame 059353/0953 →
FIRST LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jan 15, 2019
From: PREVOTY, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 048077/0753 →
SECOND LIEN INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Jan 15, 2019
From: PREVOTY, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 048077/0795 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 17, 2018
From: ANAND, KUNAL
To: PREVOTY, INC.
Reel/Frame 046373/0073 →
Continuity (5)
Continuation In Part 15268510 · Sep 16, 2016
Continuation In Part 14599978 · Jan 19, 2015
Provisional Application 62220903 · Sep 18, 2015
Provisional Application 61929474 · Jan 20, 2014
Related Publication 20180307831A1 · Oct 25, 2018
Cited By (1)
US 12,518,001