Mobile application fingerprinting is a critical capability for network security, enabling policy enforcement and malware detection. However, we find that the performance of existing mobile app fingerprinting techniques (e.g., FlowPrint, AppScanner, an...
Mobile application fingerprinting is a critical capability for network security, enabling policy enforcement and malware detection. However, we find that the performance of existing mobile app fingerprinting techniques (e.g., FlowPrint, AppScanner, and ET-BERT) significantly degrades when a virtual private network (VPN) is used. This dissertation addresses two realistic scenarios to enable robust mobile app fingerprinting in VPN environments: single-app identification and multi-app detection.
For single-app identification, we propose a framework called AppSniffer that uses a two-stage classification process. In the first stage, we distinguish VPN traffic from normal traffic; in the second stage, we apply the optimal model for each traffic type. Specifically, we propose a stacked ensemble model using Light Gradient Boosting Machine (LightGBM) and a FastAI library-based neural network to identify applications over VPNs. Our experimental results on 150 Android apps show that AppSniffer achieves F1-scores between 84.7% and 95.5% across four different VPN protocols, while the best existing method (AppScanner) achieves only 25.6% to 47.6% in the same settings. When normal and VPN traffic are mixed, AppSniffer achieves an F1-score of 90.6%, significantly outperforming AppScanner’s 70.4%.
For multi-app detection, we examine scenarios where flows from concurrent applications become heavily interleaved within a VPN tunnel. Our analysis reveals that state-of-the-art multi-app fingerprinting frameworks such as FOADA degrade substantially under TCP/OpenVPN traffic, achieving an F1-score of only 45.2%. To address this limitation, we propose a sequential encoder-based framework that preserves temporal dependencies, improving the F1-score to 74.4% in the same setting.