Usage-Based Fuzz Testing for User Input Fields

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Fuzz testing is time-consuming and difficult to automate due to the large number of possibilities that need to be explored and the need for human intelligence to determine a valid starting point, especially when identifying vulnerabilities in user input fields of running applications in a production environment.

Innovation Solution

A computer-implemented method that monitors and ranks user input fields based on actual usage data, selectively performs fuzz testing on high-priority fields, and dynamically adapts to changes in usage patterns, using spare resources to generate fuzzed inputs that mimic real user interactions and environmental contexts to identify and mitigate vulnerabilities.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If fuzz testing is performed on all user input fields, then security vulnerability detection coverage is improved, but resource consumption and testing time increase significantly

Engineering Contradiction:
Improvesecurity vulnerability detection coverageVSAvoidtesting time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent segments the set of all user input fields into different priority groups based on actual usage data. High-priority fields that are frequently used are selected for fuzz testing, while low-priority fields are excluded. This segmentation allows the system to focus testing resources on the most critical fields, maintaining security coverage while reducing overall testing time and resource consumption.

Inventive Principle:
Principle #1Segmentation

2Reliability

If fuzz testing is performed on all user input fields, then security vulnerability detection coverage is improved, but resource consumption increases

Engineering Contradiction:
Improvesecurity vulnerability detection coverageVSAvoidresource consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The system segments user input fields into priority groups using usage data analysis. By selecting only high-priority fields for fuzz testing, the patent reduces the computational resources, processor cycles, and memory required for testing while maintaining adequate security coverage on the most critical fields.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by allocating testing resources differently based on the specific characteristics of each user input field. High-priority fields receive intensive fuzz testing resources, while low-priority fields receive minimal or no testing resources. This non-uniform resource allocation optimizes the balance between security coverage and resource consumption.

Inventive Principle:
Principle #3Local quality

3Reliability

If traditional fuzz testing is used, then vulnerability detection capability is maintained, but automation difficulty increases due to need for human intelligence

Engineering Contradiction:
Improvevulnerability detection capabilityVSAvoidautomation capability
Core Design Contradiction:
ReliabilityVSExtent of automation

Solution Approach 1:

The patent implements feedback by using actual usage data from production environments to automatically determine which user input fields should be tested. The system continuously monitors usage patterns and uses this feedback to dynamically select test fields, eliminating the need for manual human analysis while maintaining effective vulnerability detection capability.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs self-service by automatically analyzing its own usage data to identify high-priority user input fields that require fuzz testing. This self-directed approach enables full automation of the test selection process, removing the dependency on human intelligence to determine valid starting points for testing.

Inventive Principle:
Principle #25Self-service

4Productivity

If usage-based field selection is implemented, then resource utilization is improved, but system complexity increases

Engineering Contradiction:
Improveresource utilization efficiencyVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-calculating and storing usage statistics for each user input field before fuzz testing begins. The system analyzes usage data in advance to determine field priorities, creating a ready-to-use selection criteria that simplifies the actual testing process and reduces real-time computational complexity.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10831646B2Resources usage for fuzz testing applications
Publication Date: 2020.11.10 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10831646B2 patent drawing
  • US10831646B2 patent drawing
  • US10831646B2 patent drawing

AI summary

Improved utilization of spare resources for fuzz testing is provided. A production environment that includes a plurality of running applications having a plurality of user input fields is monitored over a period of time for consumer use. Actual usage data for the plurality of user input fields are determined during the period of time. Each user input field in the plurality of user input fields is ranked for fuzz testing based on, at least in part, the actual usage data corresponding to each respective user input field during the period of time. The fuzz testing is selectively performed on a portion of the plurality of user input fields based on user input field rankings.