Browser Extension Vetting via Source Code Rewriting and Tracking
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Browser-executed web applications and extensions can pose security risks due to their increased permissions, making it challenging for online marketplaces and users to ensure the security and reliability of these applications, especially when malicious code is embedded within other executable code.
Innovation Solution
A method involving identifying program binary files on webpages, rewriting the source code of browser-executable web applications or extensions to include tracking code, and executing the rewritten code to determine if it violates predetermined conditions, thereby discouraging or disabling their download or execution on client devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If browser-executed web applications and extensions are granted increased permissions to access local resources, then their functionality is improved, but security risks increase
Solution Approach 1:
The system performs preliminary analysis of web applications and extensions before they are executed or installed on user devices. By rewriting the source code to include tracking code and executing it in a controlled browser environment beforehand, the system identifies potentially malicious behavior in advance, allowing legitimate applications with increased permissions to be approved while blocking malicious ones before they can harm users.
2Object-affected harmful factors
If malicious web applications or extensions are detected and blocked, then security is improved, but the ability to distribute executable code outside marketplaces is restricted
Solution Approach 1:
The system introduces an intermediary analysis layer between the distribution of executable code and its execution on user devices. When a web application or extension is downloaded from outside a marketplace, the system intercepts it, rewrites the source code to include tracking code, executes it in a controlled browser environment, and analyzes its behavior. This intermediary process enables secure distribution from external sources by verifying the application's behavior before allowing it to run on user devices.
3Measurement precision
If source code is rewritten to include tracking code for behavior analysis, then detection accuracy is improved, but processing complexity increases
Solution Approach 1:
Instead of analyzing the original source code directly, the system creates a copy by rewriting the source code to include tracking code. This rewritten version is then executed in a controlled browser environment while the original remains unchanged. The tracking code instruments the application to log its behavior, allowing detailed analysis of potentially malicious actions without modifying or risking the original application code.
Data Source
AI summary
A program binary file is identified as part of a webpage, where the file can be downloaded from the webpage for execution by a client. A browser-executable web application or browser extension that is installed on a client computing device as a consequence of executing the program binary is identified, where source code for the web application or browser extension includes scripting language code. The source code of the web application or browser extension is re-written to include tracking code to track behavior during execution of the re-written web application or browser extension. It is determined whether execution of the re-written web application or browser extension violates one or more predetermined conditions. Then, it is determined whether to discourage downloading the program binary from the webpage to the client computing device or whether to disable execution of the web application or browser extension on the client.


