标题: | 基于污染语意萃取与重播的低耦合度资讯流追踪机制 Decoupling Information Flow Tracking with Taint Semantics Extraction and Replay |
作者: | 洪聿昕 吴育松 Hung, Yu-Hsin Wu, Yu-Sung 资讯科学与工程研究所 |
关键字: | 资讯流追踪;污染分析;录制与重播;中继码;information flow tracking;taint analysis;record and replay;intermediate representation |
公开日期: | 2017 |
摘要: | 动态资讯流追踪是一种众所周知用于安全分析的技术。过去许多研究大多基于字节层级并使用内嵌的污染传播方式来达到细粒度的污染分析,因此资讯流追踪的逻辑与应用程式本身高度耦合,而且实作上通常与程式语言或处理器架构高度相依。此外,这种作法对于效能的影响可能致使其不适合用于生产环境中。在本研究中,我们提出了一个低耦合度的资讯流追踪机制,将资讯流追踪的逻辑自程式执行中抽离。我们所设计的工具在编译时期自目标程式的 LLVM 中继码中萃取出污染传播语意,将 LLVM 中继码转译为专为资讯流追踪所设计的中继码,并且注入追踪记录的程式码。在程式执行的过程中,注入的程式码会将程式执行的追踪纪录与必要的变数资讯写入至纪录档或传送至资讯流追踪引擎。追踪引擎基于收到的纪录重建出程式执行时期的控制流程,并透过模拟呼叫堆叠及污染传播的方式来重播污染传播语意。如此低耦合度的架构能有效降低资讯流追踪对于程式执行所产生的效能影响,并且能提供离线资料流分析更多弹性与应用情境。 Dynamic information flow tracking is a well-known technique for security analysis. Most of previous researches perform inline taint propagation at byte-level to achieve fine-grained taint analysis, hence the information flow tracking logic is tightly-coupled with program itself, and the implementations are typically language-dependent or architecture-dependent. Furthermore, it could make the performance overhead not applicable for production systems. In this research, we propose a mechanism for decoupling the information flow tracking from program execution. Our tool extracts the taint semantics from the LLVM IR of target program during compile-time, translates them into an intermediate representation designed for information flow tracking, and instruments logging code into the program. During program execution, the instrumented program emits execution trace and runtime information to the information flow tracking engine for taint analysis. The engine reconstructs the control flow and replays the taint semantics by simulating the call stack and taint propagation. The loosely-coupled architecture effectively reduces the performance overhead to make information flow tracking to be more practical for production, and also provides more flexibility and application scenarios for offline data flow analysis. |
URI: | http://etd.lib.nctu.edu.tw/cdrfb3/record/nctu/#GT070456018 http://hdl.handle.net/11536/142503 |
显示于类别: | Thesis |