一句话:提出 DistTaint,一个面向分布式系统的动态污点分析器,通过偏序方法执行事件推断隐式依赖,兼顾可移植性与可扩展性。
信息流安全是分布式系统代码安全的重要方面,但现有信息流安全方案多局限于集中式软件,难以直接应用于分布式系统,面临技术适用性、工具可移植性和分析可扩展性挑战。本文提出 DistTaint,一个面向分布式系统的动态污点分析器。它通过对方法执行事件进行偏序化来推断分布式程序中的隐式依赖,解决适用性问题;完全在应用层工作,无需定制运行时平台,解决可移植性问题;采用多阶段分析,先进行方法级预分析以缩小后续语句级分析范围,从而提升可扩展性。作者在八个真实分布式系统上评估 DistTaint,结果表明其可用于工业级分布式系统,具备可移植性与可扩展性,并能发现已知和未知漏洞。
As in other software domains, information flow security is a fundamental aspect of code security in distributed systems. However, most existing solutions to information flow security are limited to centralized software. For distributed systems, such solutions face multiple challenges, including technique applicability, tool portability, and analysis scalability. To overcome these challenges, we present DistTaint, a dynamic information flow (taint) analyzer for distributed systems. By partial-ordering method-execution events, DistTaint infers implicit dependencies in distributed programs, so as to resolve the applicability challenge. It resolves the portability challenge by working fully at application level, without customizing the runtime platform. To achieve scalability, it reduces analysis costs using a multi-phase analysis, where the pre-analysis phase generates method-level results to narrow down the scope of the following statement-level analysis. We evaluated DistTaint against eight real-world distributed systems. Empirical results showed DistTaint’s applicability to, portability with, and scalability for industry-scale distributed systems, along with its capability of discovering known and unknown vulnerabilities. A demo video for DistTaint can be downloaded from https://www.dropbox.com/l/scl/AAAkrm4p63Ffx0rZqblY3zlLFuaohbRxs0 or viewed here https://youtu.be/fy4yMIaKzPE online. The tool package is here: https://www.dropbox.com/sh/kfr9ixucyny1jp2/AAC00aI-I8Od4ywZCqwZ1uaa?dl=0
DOI 原文 ·
@inproceedings{paperbot5153,
title = {A dynamic taint analyzer for distributed systems},
author = {Xiaoqin Fu and Haipeng Cai},
booktitle = {FSE},
year = {2019},
doi = {10.1145/3338906.3341179}
}