TaintPipe: Pipelined Symbolic Taint Analysis. Ming, J.; Wu, D.; Xiao, G.; Wang, J.; and Liu, P. In Proceedings of the USENIX Security Symposium (USENIX Security), pages 65-80, 8, 2015. USENIX Association.
TaintPipe: Pipelined Symbolic Taint Analysis [link]Website  abstract   bibtex   
Taint analysis has a wide variety of compelling applications in security tasks, from software attack detection to data lifetime analysis. Static taint analysis propagates taint values following all possible paths with no need for concrete execution, but is generally less accurate than dynamic analysis. Unfortunately, the high performance penalty incurred by dynamic taint analyses makes its deployment impractical in production systems. To ameliorate this performance bottleneck, recent research efforts aim to decouple data flow tracking logic from program execution. We continue this line of research in this paper and propose pipelined symbolic taint analysis, a novel technique for parallelizing and pipelining taint analysis to take advantage of ubiquitous multi-core platforms. We have developed a prototype system called TaintPipe. TaintPipe performs very lightweight runtime logging to produce compact control flow profiles, and spawns multiple threads as different stages of a pipeline to carry out symbolic taint analysis in parallel. Our experiments show that TaintPipe imposes low overhead on application runtime performance and accelerates taint analysis significantly. Compared to a state-of-the-art inlined dynamic data flow tracking tool, TaintPipe achieves 2:38 times speedup for taint analysis on SPEC 2006 and 2:43 times for a set of common utilities, respectively. In addition, we demonstrate the strength of TaintPipe such as natural support of multi-tag taint analysis with several security applications.
@inProceedings{
 title = {TaintPipe: Pipelined Symbolic Taint Analysis},
 type = {inProceedings},
 year = {2015},
 keywords = {analysis,privacy,taint-analysis,tainting},
 pages = {65-80},
 websites = {https://www.usenix.org/conference/usenixsecurity15/technical-sessions/presentation/ming},
 month = {8},
 publisher = {USENIX Association},
 city = {Washington, D.C.},
 id = {ecc2552e-996c-33b9-b0e5-19435ac0dcdb},
 created = {2018-07-12T21:31:49.056Z},
 file_attached = {false},
 profile_id = {f954d000-ce94-3da6-bd26-b983145a920f},
 group_id = {b0b145a3-980e-3ad7-a16f-c93918c606ed},
 last_modified = {2018-07-12T21:31:49.056Z},
 read = {false},
 starred = {false},
 authored = {false},
 confirmed = {true},
 hidden = {false},
 citation_key = {ming:taintpipe15},
 source_type = {inproceedings},
 private_publication = {false},
 abstract = {Taint analysis has a wide variety of compelling applications in security tasks, from software attack detection to data lifetime analysis. Static taint analysis propagates taint values following all possible paths with no need for concrete execution, but is generally less accurate than dynamic analysis. Unfortunately, the high performance penalty incurred by dynamic taint analyses makes its deployment impractical in production systems. To ameliorate this performance bottleneck, recent research efforts aim to decouple data flow tracking logic from program execution. We continue this line of research in this paper and propose pipelined symbolic taint analysis, a novel technique for parallelizing and pipelining taint analysis to take advantage of ubiquitous multi-core platforms. We have developed a prototype system called TaintPipe. TaintPipe performs very lightweight runtime logging to produce compact control flow profiles, and spawns multiple threads as different stages of a pipeline to carry out symbolic taint analysis in parallel. Our experiments show that TaintPipe imposes low overhead on application runtime performance and accelerates taint analysis significantly. Compared to a state-of-the-art inlined dynamic data flow tracking tool, TaintPipe achieves 2:38 times speedup for taint analysis on SPEC 2006 and 2:43 times for a set of common utilities, respectively. In addition, we demonstrate the strength of TaintPipe such as natural support of multi-tag taint analysis with several security applications.},
 bibtype = {inProceedings},
 author = {Ming, Jiang and Wu, Dinghao and Xiao, Gaoyao and Wang, Jun and Liu, Peng},
 booktitle = {Proceedings of the USENIX Security Symposium (USENIX Security)}
}
Downloads: 0