IP Library Granted Patent US 12,432,246
Granted Patent B2
US 12,432,246 · App. 17/950,025 · Granted Sep 30, 2025

Iterative generation of hypertext transfer protocol traffic

Inventors: Moshe Elior Apelbaum (Herzliya, IL); Allon Mureinik (Tel-Aviv, IL); Tamir Shavro (Ramat Hasharon, IL)
Assignee: Black Duck Software, Inc.
H04L63/1433H04L63/1416H04L63/1425
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 12,432,246
App. No.
17/950,025
Granted
Sep 30, 2025
Kind
B2
Abstract

A method for testing an HTTP endpoint includes sending a first HTTP request to a first HTTP endpoint, receiving a first response to the first HTTP request from the first HTTP endpoint, and determining, based on the first response, a first parameter that the first HTTP endpoint expected to receive in the first HTTP request. The method also includes generating, by a processing device, a second HTTP request that includes the first parameter and sending the second HTTP request with the first parameter to the first HTTP endpoint.

Claims (53)

1. A computer-implemented method for monitoring a hypertext transfer protocol (HTTP) endpoint by an interactive application security testing (LAST) application to detect vulnerabilities in a running application, the method comprising:

sending, by the LAST application, a first HTTP request to a first HTTP endpoint;

receiving, by the LAST application, a first response to the first HTTP request from the first HTTP endpoint;

determining, by the LAST application, that the first response indicates that a first parameter that the first HTTP endpoint expected to receive in the first HTTP request was missing from the first HTTP request;

based on the first response indicating that the first parameter was missing from the first HTTP request, generating, by the LAST application, a second HTTP request, wherein the second HTTP request comprises the first parameter that was expected in the first HTTP request;

sending, by the LAST application, the second HTTP request comprising the first parameter to the first HTTP endpoint;

receiving, by the LAST application, a second response to the second HTTP request from the first HTTP endpoint;

determining, by the LAST application, that the second response indicates that no parameters that the first HTTP endpoint expected to receive in the second HTTP request were missing from the second HTTP request;

based on the second response indicating that no parameters that the first HTTP endpoint expected to receive in the second HTTP request were missing from the second HTTP request, sending, by the LAST application and to the first HTTP endpoint, a third HTTP request comprising the first parameter that was expected in the first HTTP request;

monitoring, by the LAST application, an action performed by the first HTTP endpoint in response to the third HTTP request; and

detecting, by the LAST application, a security vulnerability in the running application based on the action.

2. The method of claim 1 , further comprising determining a second parameter expected by the first HTTP endpoint based on analyzing an annotation of the first HTTP endpoint, wherein the first HTTP request comprises the second parameter.

3. The method of claim 1 , wherein the first response comprises one or more of a HTTP response code, a HTTP response header, and a HTTP response body, and wherein the first parameter is determined based on one or more of the HTTP response code, the HTTP response header, and the HTTP response body.

4. The method of claim 1 , further comprising determining a value of the first parameter based on one or more of a name of the first parameter and a class of the first parameter.

5. The method of claim 1 , further comprising:

determining a second HTTP endpoint from a queue; and

sending a third HTTP request to the second HTTP endpoint.

6. The method of claim 5 , wherein sending the third HTTP request to the second HTTP endpoint is based on a login event.

7. The method of claim 5 , wherein sending the third HTTP request to the second HTTP endpoint is based on a number of HTTP requests sent to the first HTTP endpoint exceeding a threshold.

8. An apparatus for monitoring a HTTP endpoint by an IAST application to detect vulnerabilities in a running application, the apparatus comprising:

a memory storing instructions; and

a processor communicatively coupled to the memory and to execute the instructions, the instructions when executed cause the processor to:

receive, by the LAST application, a first response to a first request from a first endpoint;

determine, by the LAST application, that the first response indicates that a first parameter that the first endpoint expected to receive in the first request was missing from the first request;

based on the first response indicating that the first parameter was missing from the first request, send, by the LAST application and to the first endpoint, a second request, wherein the second request comprises the first parameter that was expected in the first request;

receive, by the LAST application, a second response to the second request from the first endpoint;

determine, by the LAST application, that the second response indicates that no parameters that the first endpoint expected to receive in the second request were missing from the second request;

based on the second response indicating that no parameters that the first endpoint expected to receive in the second request were missing from the second request, send, by the LAST application and to the first endpoint, a third request comprising the first parameter that was expected in the first request;

monitor, by the LAST application, an action performed by the first endpoint in response to the third request; and

detect, by the LAST application, a security vulnerability in the running application based on the action.

9. The apparatus of claim 8 , wherein the processor is further configured to determine a second parameter expected by the first endpoint based on analyzing an annotation of a handler of the first endpoint, wherein the first request comprises the second parameter.

10. The apparatus of claim 8 , wherein the first response comprises one or more of a response code, a response header, and a response body, and wherein the first parameter is determined based on one or more of the response code, the response header, and the response body.

11. The apparatus of claim 8 , wherein the processor is further configured to determine a value of the first parameter based on one or more of a name of the first parameter and a class of the first parameter.

12. The apparatus of claim 8 , wherein the processor is further configured to:

determine a second endpoint from a queue; and

send a third request to the second endpoint.

13. The apparatus of claim 12 , wherein sending the third request to the second endpoint is based on a successful login event occurring.

14. A non-transitory, computer readable medium storing instructions for monitoring a HTTP endpoint by an IAST application to detect vulnerabilities in a running application that, when executed by a processor, cause the processor to:

receive, by the LAST application, a first response to a first HTTP request from a first HTTP endpoint;

determine, by the LAST application, that the first response indicates that a first parameter that the first HTTP endpoint expected to receive in the first HTTP request was missing from the first HTTP request;

based on the first response indicating that the first parameter was missing from the first HTTP request, generate, by the LAST application, a second HTTP request, wherein the second HTTP request comprises the first parameter that was expected in the first HTTP request;

send, by the LAST application, the second HTTP request to the first HTTP endpoint;

receive, by the LAST application, a second response to the second HTTP request from the first HTTP endpoint;

determine, by the LAST application, that the second response indicates that no parameters that the first HTTP endpoint expected to receive in the second HTTP request were missing from the second HTTP request;

based on the second response indicating that no parameters that the first HTTP endpoint expected to receive in the second HTTP request were missing from the second HTTP request, send, by the LAST application and to the first HTTP endpoint, a third HTTP request comprising the first parameter that was expected in the first HTTP request;

monitor, by the IAST application, an action performed by the first HTTP endpoint in response to the third HTTP request; and

detect, by the LAST application, a security vulnerability in the running application based on the action.

15. The medium of claim 14 , wherein the processor further determines a second parameter expected by the first HTTP endpoint based on analyzing an annotation of an HTTP handler of the first HTTP endpoint, wherein the first HTTP request comprises the second parameter.

16. The medium of claim 14 , wherein the first response comprises one or more of a HTTP response code, a HTTP response header, and a HTTP response body, and wherein the first parameter is determined based on one or more of the HTTP response code, the HTTP response header, and the HTTP response body.

17. The medium of claim 14 , wherein the processor further determines a value of the first parameter based on one or more of a name of the first parameter and a class of the first parameter.

18. The medium of claim 14 , wherein the processor further:

determines a second HTTP endpoint from a queue; and

sends a third HTTP request to the second HTTP endpoint.

Assignments (4)
SECURITY INTEREST Recorded Sep 30, 2024
From: BLACK DUCK SOFTWARE, INC.
To: ARES CAPITAL CORPORATION, AS COLLATERAL AGENT
Reel/Frame 069083/0149 →
CHANGE OF NAME Recorded Jul 30, 2024
From: SOFTWARE INTEGRITY GROUP, INC.
To: BLACK DUCK SOFTWARE, INC.
Reel/Frame 068191/0490 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2024
From: SYNOPSYS, INC.
To: SOFTWARE INTEGRITY GROUP, INC.
Reel/Frame 066664/0821 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 6, 2022
From: APELBAUM, MOSHE ELIOR; MUREINIK, ALLON; SHAVRO, TAMIR
To: SYNOPSYS INCORPORATED
Reel/Frame 061340/0993 →
Continuity (2)
Provisional Application 63247254 · Sep 22, 2021
Related Publication 20230091903A1 · Mar 23, 2023
References Cited (5)
US 7203720B2 · Smedberg · 2007 [cited by examiner]
US 10075468B2 · Kish · 2018 [cited by examiner]
US 20130268632A1 · Baron · 2013 [cited by examiner]
US 20170270303A1 · Roichman · 2017 [cited by examiner]
US 20210334088A1 · Ma · 2021 [cited by examiner]