IP Library Granted Patent US 10,242,199
Granted Patent B2
US 10,242,199 · App. 15/031,454 · Granted Mar 26, 2019

Application test using attack suggestions

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,242,199
App. No.
15/031,454
Granted
Mar 26, 2019
Kind
B2
Abstract

Example embodiments disclosed herein relate to a security test. A crawl of an application under test (AUT) is performed to determine an attack surface using crawl sessions. One or more parameters of the attack surface are probed during the respective crawl sessions. A trace is requested from an observer for the probe of the one or more parameters. Attack suggestions are received from the observer based on the trace of the one or more parameters.

Claims (55)

1. A system comprising:

a server hosting:

an application under test (AUT); and

an observer to monitor instructions executed by the AUT, wherein the observer is a runtime agent operating in an execution environment of the AUT;

a computing device communicatively coupled to the AUT and the observer through a common communication channel, the computing device to:

perform a crawl of the AUT to determine an attack surface using crawl sessions;

probe one or more parameters of the attack surface during the respective crawl sessions;

request a trace from the observer for the probe of the one or more parameters;

receive attack suggestions from the observer based on the trace of the one or more parameters, the attack suggestions received from the observer including a list of security vulnerabilities of the AUT;

receive deduplication information from the observer, wherein the deduplication information includes a line of code;

add the deduplication information to a hash; and

use the hash to determine whether to perform at least one attack on the attack surface.

2. The system of claim 1 , wherein the computing device further to:

request from the observer a set of supported attack suggestions that the observer supports; and

receive the set of supported attack suggestions.

3. The system of claim 1 , wherein the computing device is further to:

attack the attack surface to yield one or more security vulnerabilities, wherein the attack uses the attack suggestions received from the observer.

4. The system of claim 1 , wherein the list of vulnerabilities included in the received attack suggestions is associated with particular types of functions used during a probe of a parameter.

5. The system of claim 1 , wherein the observer is further to:

determine access to underlying code of the AUT;

determine the deduplication information based on the underlying code accessed; and

send the deduplication information to the computing devices.

6. The system of claim 1 , wherein the observer, during the trace, determines the attack suggestions by inspecting the execution path of the AUT during the probe and wherein the inspection is further based on one or more application programming interfaces (APIs) exercised by the probe.

7. A non-transitory machine-readable storage medium storing instructions that, upon execution by at least one processor of a device, cause the device to:

perform a crawl of an application under test (AUT) executed on a second device, the crawl to determine an attack surface using a plurality of crawl sessions;

probe one or more parameters of the attack surface;

request a trace from an observer for the respective probes of the one or more parameters, wherein the observer is a runtime agent executed on the second device;

receive attack suggestions from the observer based on the trace of the one or more parameters, the received attack suggestions including a list of security vulnerabilities of the AUT;

receive deduplication information from the observer, wherein the deduplication information includes a line of code;

add the deduplication information to a hash; and

use the hash to determine whether to attack the attack surface using the received attack suggestions.

8. The non-transitory machine-readable storage medium of claim 7 , wherein the attack suggestions are determined by the observer based on monitoring of the execution path of the underlying code of the AUT.

9. The non-transitory machine-readable storage medium of claim 8 , wherein the monitoring of the execution of the underlying code of the AUT by the observer is further based on one or more application programming interfaces (APIs) exercised by the probe.

10. The non-transitory machine-readable storage medium of claim 7 , further comprising instructions that, if executed by the at least one processor, cause the device to:

receive the deduplication information from the observer during an attack; and

use the deduplication information to halt a test of a particular section of code of the AUT.

11. A non-transitory machine-readable storage medium storing instructions that, upon execution by at least one processor of a device, cause the device to:

monitor, using an observer, execution of an application under test (AUT), wherein the observer is a runtime agent operating in an execution environment of the AUT;

monitor, using the observer, a crawl session of the AUT performed by a security test engine on a second device;

perform a path trace, using the observer, of a probe by the security test engine on the AUT during the crawl session using one or more parameters;

determine, using the observer, attack suggestions based on the path trace of the probe;

send the attack suggestions from the observer to the security test engine, the attack suggestions received including a list of security vulnerabilities of the AUT;

determine, using the observer, deduplication information based on the underlying code accessed; and

send the deduplication information from the observer to the security test engine, wherein the deduplication information includes a line of code, wherein the security test engine is to add the deduplication information to a hash and use the hash to determine whether to perform at least one attack using the attack suggestions.

12. The non-transitory machine-readable storage medium of claim 11 , further comprising instructions that upon execution by the at least one processor, cause the device to:

receive, using the observer, a penetration test that uses at least one of the attack suggestions;

monitor, using the observer, the AUT during the penetration test.

13. The non-transitory machine-readable storage medium of claim 11 , wherein the set of support attack suggestions is updated using a configuration file.

14. The non-transitory machine-readable storage medium of claim 11 , further comprising instructions that, upon execution by the at least one processor, cause the device to: receive, using the observer, a request for supported attack suggestions from a security test engine; send a set of supported attack suggestions from observer to the security test engine.

15. The non-transitory machine-readable storage medium of claim 11 , wherein the list of vulnerabilities included in the attack suggestions is associated with particular types of functions used during the probe on the AUT.

16. The non-transitory machine-readable storage medium of claim 7 , further comprising instructions that, if executed by the at least one processor, cause the device to:

request, from the observer, a set of attack suggestions that the observer supports; and

receive the set of supported attack suggestions from the observer.

17. The non-transitory machine-readable storage medium of claim 7 , wherein the list of vulnerabilities included in the attack suggestions is associated with particular types of functions used during the probe on the AUT.

18. The non-transitory machine-readable storage medium of claim 7 , wherein the observer is executed in an execution environment of the AUT.

Assignments (7)
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0577 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC)
Reel/Frame 063560/0001 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
CHANGE OF NAME Recorded Aug 8, 2019
From: ENTIT SOFTWARE LLC
To: MICRO FOCUS LLC
Reel/Frame 050004/0001 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ENTIT SOFTWARE LLC; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ENTIT SOFTWARE LLC; ARCSIGHT, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0577 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2017
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: ENTIT SOFTWARE LLC
Reel/Frame 042746/0130 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2016
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 038536/0001 →
Cited By (18)
US 12,355,787 US 12,363,148 US 12,368,746 US 12,375,573 US 12,464,003 US 12,470,577 US 12,470,578 US 12,483,576 US 12,489,770 US 12,500,911 US 12,513,221 US 12,537,837 US 12,537,839 US 12,556,548 US 12,587,553 US 12,659,326 US 12,689,638 US 12,706,932