Automated Penetration Test Generation from System Test Cases

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current security analysis techniques for computer programs are time-consuming and resource-intensive, and lack a failsafe method to identify and fix vulnerabilities, particularly in cloud computing environments where security breaches can occur due to human error or insecure applications.

Innovation Solution

A computer-implemented method that automatically generates penetration tests by parsing existing system test cases to identify program calls requiring data access authorization, using predetermined attack vectors to simulate unauthorized access and detect vulnerabilities, with notifications sent for unauthorized access occurrences.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If manual security analysis techniques are used to test computer programs, then security vulnerabilities can be identified, but the process is time-consuming and resource-intensive

Engineering Contradiction:
Improvesecurity vulnerability detectionVSAvoidtesting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs self-service by automatically generating penetration tests from existing system test cases without requiring manual security expert intervention. The automated system parses test cases, identifies authorization checks, generates attack vectors, and detects vulnerabilities independently, eliminating the need for continuous manual analysis while maintaining reliable vulnerability detection

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system performs preliminary action by pre-generating penetration tests from existing system test cases before actual security testing is needed. By analyzing test cases in advance and creating corresponding attack vector tests, the system prepares security test scenarios that can be executed automatically, reducing the time required during actual vulnerability assessment

Inventive Principle:
Principle #10Preliminary action

2Reliability

If comprehensive security testing is performed on computer programs, then security vulnerabilities can be detected, but significant resources are required

Engineering Contradiction:
Improvesecurity vulnerability detectionVSAvoidresource requirements
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The system achieves universality by making existing system test cases serve multiple purposes - both functional testing and security vulnerability detection. By reusing the same test case infrastructure for both purposes and automatically generating penetration tests from functional test cases, the system eliminates the need for separate dedicated security testing resources while maintaining comprehensive vulnerability detection

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The system uses copying by creating penetration test versions of existing system test cases. Instead of developing entirely new security tests, the system copies the structure and logic of functional test cases and transforms them into security-focused penetration tests, significantly reducing the resources needed for comprehensive security testing

Inventive Principle:
Principle #26Copying

3Productivity

If automated penetration testing is generated from system test cases, then testing efficiency is enhanced and resource requirements are reduced, but the system complexity increases

Engineering Contradiction:
Improvetesting efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system applies segmentation by breaking down the complex task of security testing into distinct modular components: test case parsing, program call identification, authorization check detection, penetration test generation, and vulnerability detection. Each component handles a specific aspect of the process independently, making the overall complex system manageable and maintainable while achieving high testing efficiency

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11416623B2Automatic penetration testing enablement of regression buckets
Publication Date: 2022.08.16 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11416623B2 patent drawing
  • US11416623B2 patent drawing
  • US11416623B2 patent drawing

AI summary

A computer-implemented method for generating penetration tests automatically includes parsing an existing system test case, and identifying a particular program call in the system test case. The particular program call can require a particular data access authorization. The method further includes, in response to the system test case including the particular program call, generating a penetration test using a predetermined attack vector. The method further includes executing the penetration test and detecting an unauthorized access being performed during the penetration test. Further, the method includes responsively, sending a notification that identifies the particular program call.