Leaking Queries On Secure Stream Processing Systems
Hung Pham, Viet Vo, Tien Tuan Anh Dinh, Duc Tran, Shuhao Zhang
TL;DR
The paper reveals a practical timing-side-channel vulnerability in SGX-protected distributed stream processing systems, showing that an untrusted cloud can deduce the content of a user’s query DAG and even infer operator parameters. By offline profiling of individual operators and online monitoring of isolated operator executions, an attacker can reconstruct proprietary query logic with substantial accuracy, achieving up to around 92% in operator recovery in controlled experiments using SecureStream and NEXMark benchmarks. The authors implement a lean DSP inside SGX, leverage two time-series representations (CDF and TS2Vec), and evaluate three ML models (Random Forest, SVM, XGBoost) to classify operators and predict parameters; results indicate strong within-benchmark performance, with limited cross-benchmark generalization, highlighting robustness limits of the ML-based leakage. They propose mitigation strategies centered on obfuscating timing information and batching, while noting that standard cryptographic approaches may be insufficient for query confidentiality in streaming contexts. Overall, the work exposes a critical privacy risk for secure stream processing and motivates a shift toward query-aware, timing-resilient design in cloud-based DSPs.
Abstract
Stream processing systems are important in modern applications in which data arrive continuously and need to be processed in real time. Because of their resource and scalability requirements, many of these systems run on the cloud, which is considered untrusted. Existing works on securing databases on the cloud focus on protecting the data, and most systems leverage trusted hardware for high performance. However, in stream processing systems, queries are as sensitive as the data because they contain the application logics. We demonstrate that it is practical to extract the queries from stream processing systems that use Intel SGX for securing the execution engine. The attack performed by a malicious cloud provider is based on timing side channels, and it works in two phases. In the offline phase, the attacker profiles the execution time of individual stream operators, based on synthetic data. This phase outputs a model that identifies individual stream operators. In the online phase, the attacker isolates the operators that make up the query, monitors its execution, and recovers the operators using the model in the previous phase. We implement the attack based on popular data stream benchmarks using SecureStream and NEXMark, and demonstrate attack success rates of up to 92%. We further discuss approaches that can harden streaming processing systems against our attacks without incurring high overhead.
