GPU Taint Tracking

Ari B. Hayes, Lingda Li, Mohammad Hedayati, Jia-Huan He, Eddy Z. Zhang, Kai Shen
2017 USENIX Annual Technical Conference  
Dynamic tainting tracks the influence of certain inputs (taint sources) through execution and it is a powerful tool for information flow analysis and security. Taint tracking has primarily targeted CPU program executions. Motivated by recent recognition of information leaking in GPU memory and GPU-resident malware, this paper presents the first design and prototype implementation of a taint tracking system on GPUs. Our design combines a static binary instrumentation with dynamic tainting at
more » ... ime. We present new performance optimizations by exploiting unique GPU characteristics-a large portion of instructions on GPU runtime parameters and constant memory can be safely eliminated from taint tracking; large GPU register file allows fast maintenance of a hot portion of the taint map. Experiments show that these techniques improved the GPU taint tracking performance by 5 to 20 times for a range of image processing, data encryption, and deep learning applications. We further demonstrate that GPU taint tracking can enable zeroing sensitive data to minimize information leaking as well as identifying and countering GPU-resident malware.
dblp:conf/usenix/HayesLHHZS17 fatcat:bttqbasiqzdsdkvfi7i2sndsdy