Proxy Server for Secure Cross-Domain Iframe Communication

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current web technologies face security risks due to unmonitored and uncontrolled cross-object communication within web pages, particularly across iframes from different domains, which can lead to potential data breaches and security vulnerabilities.

Innovation Solution

Implementing a proxy server that modifies web page documents to enable secure communication between iframes by adding scripts that isolate contexts and use a wrapper function to manage cross-object requests, allowing or blocking communication based on predefined security policies, thereby intercepting and analyzing cross-origin data requests before they occur.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If cross-object communication is allowed between iframes from different domains, then functionality and adaptability are improved, but security risks increase

Engineering Contradiction:
Improvecross-object communication capabilityVSAvoidsecurity risks
Core Design Contradiction:
Adaptability or versatilityVSObject-affected harmful factors

Solution Approach 1:

The patent introduces a proxy server as an intermediary component that sits between the client and the web page objects. This proxy server intercepts, monitors, and controls cross-object communication requests, allowing legitimate communication while blocking malicious ones. The intermediary enables secure cross-domain communication by acting as a trusted mediator that enforces security policies.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent implements preliminary security measures by modifying the web page document code before it executes in the client browser. The proxy server pre-installs wrapper functions and security policies that will control and monitor cross-object communication before any actual communication occurs. This preliminary action ensures that security checks are already in place when communication attempts happen.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If code modification is implemented to enable secure communication, then security is improved, but device complexity increases

Engineering Contradiction:
ImprovesecurityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The proxy server consolidates the complexity of code modification and security policy enforcement in a single external component rather than distributing it across multiple client-side systems. This centralized intermediary handles all the complex tasks of intercepting requests, modifying code, and enforcing security policies, making the overall system more manageable despite the added component.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates wrapper functions that are copies of original communication functions but with added security checks. These wrapper functions replicate the original functionality while incorporating security monitoring and control mechanisms. This copying approach allows security enforcement without completely rewriting the original communication logic.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS11200367B2Secure inter-frame communication
Publication Date: 2021.12.14 MICROSOFT TECHNOLOGY LICENSING LLC
  • US11200367B2 patent drawing
  • US11200367B2 patent drawing
  • US11200367B2 patent drawing

AI summary

Securing inter-frame communication within a web page. First, receipt of a request from a client for accessing a web page document is detected. The request includes a URL that identifies the web page document. The web page document has a tree structure that includes a top parent object and multiple child objects. The multiple child objects include at least a first child object associated with a first domain and a second child object associated with a second domain. The web page document is retrieved from a location corresponding to the URL. The code of the retrieved web page document is then modified to enable secure communication between modified code of the first child object and modified code of the second object. Finally, the modified web page document is sent to the client.