Componentized XSS Prevention for Nested Objects and Rich Text

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing Java Web application XSS prevention components lack support for custom configurations at class/method/field levels, fail to handle multi-level nesting objects, and are inadequate for rich-text content scenarios, leading to insufficient security in complex application environments.

Innovation Solution

A system and method for XSS prevention in a componentized form, utilizing a request message receiving module, thread data enable judgment, annotation retrieval and storage, component creation, intercept data determination, and intercept prevention execution, enabling custom configurations and fine-grained control through annotations like @XSSIgnore, supporting multi-level nesting objects and rich-text scenarios.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a traditional filter-based XSS prevention component is used, then basic XSS filtering can be achieved, but it cannot support custom configurations at class/method/field levels

Engineering Contradiction:
Improvecustom configuration capabilityVSAvoidcomponent structure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The XSS prevention component is segmented into multiple independent modules: annotation parsing module, configuration loading module, interceptor module, and filtering module. Each module handles a specific aspect of the prevention process, allowing fine-grained control at class/method/field levels while maintaining modularity and reducing overall system complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The solution introduces a new dimension of control through multi-level annotations (@XSS on class level, @XSSIgnore on method/field level). This annotation-based dimension allows developers to specify prevention rules at different granularities (class, method, field) without complicating the underlying component structure, effectively resolving the contradiction between adaptability and complexity.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Adaptability or versatility

If a simple filter mechanism is used, then implementation is straightforward, but it cannot handle multi-level nesting objects and rich-text scenarios

Engineering Contradiction:
Improvescenario coverage capabilityVSAvoidprocessing logic complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The filtering mechanism is made dynamic through configuration files and annotations that allow different filtering strategies for different scenarios. The system can dynamically adjust its behavior based on the specific context (multi-level nesting objects, rich-text content, etc.) without requiring a completely different implementation for each case, thus handling complex scenarios while maintaining manageable complexity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Configuration files and annotation processors serve as intermediaries between the simple filter mechanism and complex processing requirements. These intermediaries translate high-level annotations and configurations into detailed filtering rules, enabling the system to handle multi-level nesting objects and rich-text scenarios without directly complicating the core filtering logic.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If field-level control is implemented, then precise XSS prevention is achieved, but processing overhead increases for complex objects

Engineering Contradiction:
ImproveXSS prevention effectivenessVSAvoidparameter processing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Annotation parsing and configuration loading are performed in advance during application initialization and class loading phases. This preliminary action pre-processes and caches the filtering rules, so that during actual request processing, the system can quickly apply pre-defined rules without repeatedly analyzing complex object structures, thus maintaining high reliability while reducing processing overhead.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS12395518B1System and method for achieving system XSS prevention in componentized form
Publication Date: 2025.08.19 THREE GORGES HI TECH INFORMATION TECH CO LTD
  • US12395518B1 patent drawing
  • US12395518B1 patent drawing
  • US12395518B1 patent drawing

AI summary

Disclosed are a system and a method for achieving system cross-site scripting (XSS) prevention in a componentized form. The system includes: a request message receiving module, configured to receive a request message; a thread data enable judgment module, configured to enable thread data to acquire a thread data enable state when judging that interception on the request message is required; an annotation retrieval and storage module, configured to store a preset filter annotation in a class of the request message in the thread data to acquire final thread data; a component creation module, configured to generate a XSS prevention component based on the thread data enable state and the final thread data; an intercept data determination module, configured to acquire intercepted request thread data based on the XSS prevention component; and an intercept prevention execution module, configured to delete the intercepted request thread data and return a request result.