Per-App VPN Tunnel via Proxy Interception for Isolated Processes
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing VPN technologies fail to provide selective access between applications on mobile devices, leading to potential data loss and malware risks due to the inability to hook functions in isolated processes, as seen in newer Android versions like ANDROID Nougat, which run networking functions in separate isolated processes.
Innovation Solution
Implementing a per-app VPN tunnel by starting a proxy server within the application process to intercept and reroute network requests from isolated processes, using runtime function hooking and a tunnel server to ensure secure communication with enterprise resources, even when networking functions are isolated.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If networking functions are run in isolated processes for security and performance, then system security and performance are improved, but the ability to hook functions for per-app VPN is lost
Solution Approach 1:
The patent introduces a proxy server as an intermediary component that runs within the application process and intercepts network requests before they reach the isolated networking functions. This mediator enables the application to monitor and control network traffic without requiring direct access to the isolated process, thus preserving per-app VPN capabilities while maintaining the security benefits of process isolation.
2Ease of operation
If common device-level VPN technologies are used for widespread access, then access to enterprise data is improved, but security control between different applications is lost
Solution Approach 1:
The patent segments the VPN connection at the application level rather than device level. Each application process establishes its own VPN tunnel through the proxy server, allowing selective control of network traffic on a per-app basis. This segmentation enables granular security policies where different applications can have different VPN configurations, preventing malware from compromising the entire device while maintaining easy access for legitimate applications.
Solution Approach 2:
The patent implements local quality by allowing different security characteristics for different applications. The proxy server enables each application to have customized VPN parameters, authentication methods, and network routing rules tailored to its specific security requirements and data sensitivity, rather than applying a uniform VPN configuration across all applications.
Data Source
AI summary
Examples described herein include systems and methods for creating a per-app virtual private network (“VPN”) using hooking, even though an isolated process is used for networking functions. The isolated process can include networking functions of the WebView class for ANDROID. The application can start an HTTP proxy server to receive local HTTP requests. Then, the application can trigger a broadcast to the isolated process, causing the isolated process to route its HTTP requests to the HTTP proxy of the application. The application can then hook HTTP requests and send them to a virtual private network (“VPN”) tunnel server. This can allow an application to securely connect to enterprise files or data even though the networking functions occur in the isolated process.


