Browser Protection via Instrumented Code Interception
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Websites face vulnerabilities due to unrestricted access granted to third-party code, which can lead to malicious activities such as data theft, ad replacement, and user information harvesting, necessitating a system to restrict third-party code execution and monitor their activities in real-time.
Innovation Solution
The system employs instrumentation, intermittent execution, policy center, CORS-proxy, debugger, and flash-wrapper to limit third-party code permissions, monitor activities, and prevent unwanted behavior by generating instrumented code that can suspend and resume execution, and evades malicious actions without the third-party's knowledge.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If third-party code is allowed to execute freely on a website, then the website can provide desirable functionalities such as ad-serving, analytics, and social media integration, but the website becomes vulnerable to malicious activities including data theft, ad replacement, and user information harvesting
Solution Approach 1:
The patent introduces a proxy server as an intermediary between the website and third-party code execution. The proxy server mediates all interactions by injecting instrumented code that monitors and controls third-party code behavior, allowing desirable functionalities while blocking malicious activities. The proxy acts as a gatekeeper that can suspend and resume code execution based on policy violations.
Solution Approach 2:
The patent segments the code execution environment into multiple isolated contexts: the original website code, the injected instrumented code, and the third-party code. Each operates in its own namespace with controlled access. The instrumented code is divided into monitoring components that track specific actions (data access, ad rendering, cookie creation) separately, enabling granular control over third-party code behavior.
2Reliability
If the system monitors and restricts third-party code execution in real-time, then website security is enhanced, but the complexity of the system increases due to instrumentation, intermittent execution, and policy enforcement mechanisms
Solution Approach 1:
The patent creates a universal proxy server framework that handles multiple security functions through a single unified system. The same proxy infrastructure performs code injection, instrumentation, monitoring, suspension, and policy enforcement across all third-party code regardless of source or type. This multi-functional approach consolidates complexity into one standardized component rather than requiring separate mechanisms for each security function.
Solution Approach 2:
The patent changes the execution state parameters of third-party code dynamically. The instrumented code monitors variables such as execution suspension status, policy violation flags, and monitoring mode. By altering these parameters based on detected behavior, the system can transition code between different execution states (normal execution, suspended, blocked) without fundamentally changing the code structure, managing complexity through state management rather than structural complexity.
3Reliability
If the system suspends and resumes third-party code execution intermittently to prevent malicious behavior, then security is improved, but the execution time and productivity of legitimate third-party functionalities may be reduced
Solution Approach 1:
The patent implements periodic monitoring and evaluation of third-party code execution. Instead of continuous suspension, the system periodically checks code behavior against security policies, suspending execution only when violations are detected. The instrumented code performs intermittent security assessments at designated checkpoints, allowing legitimate code to execute efficiently while maintaining security through periodic verification rather than constant interruption.
Solution Approach 2:
The patent applies preliminary anti-action by pre-configuring security policies and instrumented code before third-party code execution begins. The system pre-identifies potential malicious behaviors (data access patterns, ad rendering attempts, cookie creation) and prepares corresponding blocking actions. When such behaviors are detected, the pre-prepared anti-actions are immediately applied, reducing the need for prolonged suspension and resumption cycles, thereby maintaining productivity while ensuring security.
Data Source
AI summary
Computer system, methods, and non-transitory storage medium for protecting a client device that is browsing a website from some undesired actions of third-party software. JavaScript Instrumenter to Secured Code (JISC) code (e.g. JavaScript/WebAssembly) is tailored per website that defines a set of policies of what each third-party code can and cannot do. The server also tracks and analyzes data reports from the websites, and provides reports and alerts to website administrators. Therefore, a browser on a client device visiting the website, and thus executing the JISC code that is tailored for that specific website, is protected from the third-party code, without hindering the proper action of the third-party software and without the third-party knowing that their code was monitored and controlled. Third-party activity can be monitored by the system via the combination of functionality for or more of the following: Instrumentation; Intermittent-Execution; Back-Pack; Policy-Center; Evasion; Debugger; CORS-Proxy; and Flash-Wrapper.


