HTTP Log Analysis for Web Application Security Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity of web application development often results in incomplete site maps, which hinders comprehensive security assessments, leaving vulnerable locations untested and potentially exposed to attacks.

Innovation Solution

A method that analyzes HTTP log entries in centralized web server log files to generate complete site maps, identifying all accessible locations and categorizing them based on server response codes, then uses these maps to simulate attacks and re-crawl endpoints missed by initial security assessments, creating a real-time footprint for thorough security testing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If web application development involves multiple developers working on different parts of the website, then the functionality and complexity of the web application improve, but the completeness and accuracy of the site map deteriorate

Engineering Contradiction:
Improvefunctionality of web applicationVSAvoidcompleteness of site map
Core Design Contradiction:
Adaptability or versatilityVSLoss of information

Solution Approach 1:

The system uses server log files as feedback to continuously update and validate the site map. By analyzing HTTP requests, response codes, and user navigation patterns from logs, the system automatically detects missing or outdated endpoints and corrections, ensuring the site map remains synchronized with the actual web application state despite multiple developers making changes

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The site map generation process is automated through self-service mechanisms that parse server logs and attack tool outputs without requiring manual intervention from developers. The system autonomously identifies endpoints, validates their existence through response code analysis, and updates the site map structure, eliminating the need for manual site map maintenance in complex multi-developer environments

Inventive Principle:
Principle #25Self-service

2Loss of time

If a site map is provided by web developers, then the initial setup time is reduced, but the completeness of security assessment coverage deteriorates due to incomplete or outdated information

Engineering Contradiction:
Improveinitial setup timeVSAvoidcompleteness of security assessment
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The system performs preliminary actions by automatically generating an initial site map from server logs before security assessment begins. This log-based site map is then used to guide the attack tool's crawling process, ensuring that even potentially missing endpoints are discovered and assessed, thereby improving completeness without adding significant setup time

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system continuously validates and updates the site map using feedback from server response codes during the security assessment process. When endpoints are found that don't exist or have changed, the system corrects the site map accordingly, ensuring the assessment coverage remains complete and accurate throughout the testing process

Inventive Principle:
Principle #23Feedback

3Reliability

If automated attack tools crawl the web application to generate a site map, then the site map is dynamically updated, but time-consuming and may miss hidden or unlinked endpoints

Engineering Contradiction:
Improvedynamism of site mapVSAvoidtime for security assessment
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system merges two complementary approaches: using server logs to identify all endpoints that have ever been accessed (including hidden or unlinked ones) and using automated crawling to validate current accessibility and discover relationships. This combination leverages the strengths of both methods while mitigating their individual weaknesses, achieving comprehensive coverage more efficiently

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The system performs preliminary endpoint identification from server logs before the automated crawling process begins. This pre-identified endpoint list serves as a guide for the crawler, directing it to specific locations that might otherwise be missed, thereby reducing the time required for comprehensive assessment while maintaining dynamic updates

Inventive Principle:
Principle #10Preliminary action

4Productivity

If the security team tests only locations included in the provided site map, then the testing process is efficient, but vulnerable locations outside the site map remain untested

Engineering Contradiction:
Improveefficiency of security testingVSAvoidcompleteness of security coverage
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system uses server log feedback to identify endpoints that should be tested but may be missing from the original site map. By comparing log-derived endpoints with the provided site map, the system automatically discovers and adds missing locations to the testing scope, ensuring comprehensive coverage while maintaining efficient automated testing processes

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system dynamically adjusts the test scope by continuously updating the site map based on server log analysis and crawling results. This dynamic approach allows the security testing process to adapt to the actual structure of the web application, automatically expanding coverage to include previously untested endpoints without sacrificing testing efficiency

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11297091B2HTTP log integration to web application testing
Publication Date: 2022.04.05 BANK OF AMERICA CORP
  • US11297091B2 patent drawing
  • US11297091B2 patent drawing
  • US11297091B2 patent drawing

AI summary

A method for securely testing a web application is provided. The method may include analyzing each HTTP log entry that may be included in a centralized web server log file of a web application. Each HTTP log entry may include an endpoint. The endpoint may be a URL path correlating to a location on the web application. Based on the analysis, the method may include identifying each endpoint included in the web application and generating a first web application site-map based on each identified endpoint. The method may further include determining one or more endpoints on the first web application site map, that may be absent from a second web application site map. The second web application site map may include each crawled endpoint within the web application identified via a crawling of the web application by a web application attack tool for identifying security vulnerabilities.