Context-Aware Wordlist Generation for Security Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional brute force attack campaigns for web application security testing are time-consuming and inefficient due to reliance on generic dictionary wordlists that do not account for unique semantic language within the target application, leading to a low probability of identifying correct authentication credentials.

Innovation Solution

A method to passively analyze traffic between a web application scanner and the target application to identify unique terminology, generating a tailored wordlist that can be used for brute force attacks, which includes filtering and modifying terms to create phrases, thereby increasing the likelihood of finding correct credentials.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional brute force attack campaigns use generic dictionary wordlists, then the attack can be performed with simple tools and methods, but the time required to identify correct authentication credentials increases significantly

Engineering Contradiction:
Improvespeed of credential identificationVSAvoidtime for brute force campaign
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs preliminary analysis of the target application's traffic, HTML content, JavaScript files, and database queries to extract application-specific terminology before the brute force attack begins. This pre-processing creates a customized wordlist that is tailored to the specific application, significantly reducing the time required during the actual credential identification phase compared to using generic dictionaries.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent transforms the brute force attack approach by changing the parameter of the wordlist from generic dictionary entries to application-specific terms extracted from the target system's own content. This includes modifying words based on application context, such as transforming common terms into application-specific variations, thereby increasing the probability of successful credential identification.

Inventive Principle:
Principle #35Parameter changes

2Measurement precision

If generic dictionary wordlists are used for security testing, then the testing process is simpler to implement, but the accuracy of identifying correct credentials decreases

Engineering Contradiction:
Improveaccuracy of credential identificationVSAvoidcomplexity of wordlist generation
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent enables the target application to generate its own customized wordlist by analyzing its own traffic patterns, HTML content, JavaScript files, and database queries. The application's own data serves as the source material for creating the attack wordlist, eliminating the need for external manual wordlist creation while achieving high accuracy in credential identification.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent implements a feedback mechanism where the security testing system continuously analyzes the target application's responses and traffic during the scanning process, using this information to refine and update the wordlist in real-time. This feedback loop allows the system to adapt to the specific application's terminology and structure, improving identification accuracy while automating the complexity management.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS10515219B2Determining terms for security test
Publication Date: 2019.12.24 MICRO FOCUS LLC
  • US10515219B2 patent drawing
  • US10515219B2 patent drawing
  • US10515219B2 patent drawing

AI summary

Example embodiments disclosed herein relate to determining terms for a security test. Terms associated with an application under test are determined. The terms are filtered with words in a dictionary to generate a filtered set or wordlist. The set or wordlist is used for input to the application under test for the security test.