Tell You a Definite Answer: Whether Your Data is Tainted During Thread Scheduling

Tell You a Definite Answer: Whether Your Data is Tainted During Thread Scheduling
复制标题

告诉你肯定的答案:线程调度时你的数据是否被污染

DOI:
10.1109/tse.2018.2871666
复制
发表时间:
2020-09
影响因子:
7.4
通讯作者:
Liu.Ting
Liu.Ting
中科院分区:
计算机科学1区
文献类型:
--
作者:
Zhang.Xiaodong;Yang.Zijiang;Zheng.Qinghua;Hao.Yu;Liu.Pei;Liu.Ting

文献摘要

参考文献

被引文献

相似文献

随着多核处理器的出现,人们迫切需要编写并行程序来充分利用并行计算资源。然而,由于并行执行的不确定性,对线程调度敏感的恶意软件行为是非常难以检测的。动态污点分析在安全问题中有着广泛的应用。通过串行化多线程执行并且然后沿着串行化的调度沿着传播污染标签,现有的动态污染分析技术导致相对于相同输入下的其他可能的交织的污染不足。在本文中,我们提出了一种称为DSTAM的方法,它集成了符号分析和指导执行,系统地检测污染的情况下,在给定的输入下的所有可能的执行。符号分析推断覆盖新污染实例的已执行跟踪的替代交织,并计算指导未来执行的线程调度。引导执行探索新的执行轨迹,推动未来的符号分析。我们已经实现了一个原型,作为教育工具的一部分,教授安全的C编程,准确性比效率更重要。据我们所知,DSTAM是第一个算法,解决了固定输入下的多线程程序的污点分析的挑战。
With the advent of multicore processors, there is a great need to write parallel programs to take advantage of parallel computing resources. However, due to the nondeterminism of parallel execution, the malware behaviors sensitive to thread scheduling are extremely difficult to detect. Dynamic taint analysis is widely used in security problems. By serializing a multithreaded execution and then propagating taint tags along the serialized schedule, existing dynamic taint analysis techniques lead to under-tainting with respect to other possible interleavings under the same input. In this paper, we propose an approach called DSTAM that integrates symbolic analysis and guided execution to systematically detect tainted instances on all possible executions under a given input. Symbolic analysis infers alternative interleavings of an executed trace that cover new tainted instances, and computes thread schedules that guide future executions. Guided execution explores new execution traces that drive future symbolic analysis. We have implemented a prototype as part of an educational tool that teaches secure C programming, where accuracy is more critical than efficiency. To the best of our knowledge, DSTAM is the first algorithm that addresses the challenge of taint analysis for multithreaded program under fixed inputs.
像顺序调试一样调试多线程程序
DOI: 10.1109/access.2018.2835672
发表时间: 2018
期刊: IEEE Access
影响因子: 3.9
作者:
Zhang Xiaodong;Yang Zijiang;Zheng Qinghua;Hao Yu;Liu Pei;Yu Lechen;Liu Ting
通讯作者: Liu Ting
DOI: --
发表时间: 2013
期刊: --
影响因子: --
作者:
Beng Heng Ng;Earlence Fernandes;A. Aluri;A. Prakash;Z. Yang
通讯作者: Beng Heng Ng;Earlence Fernandes;A. Aluri;A. Prakash;Z. Yang
DOI: 10.1145/1736020.1736050
发表时间: 2010-03
期刊: --
影响因子: --
作者:
Michelle L. Goodstein;Evangelos Vlachos;Shimin Chen;Phillip B. Gibbons;M. Kozuch;T. Mowry
通讯作者: Michelle L. Goodstein;Evangelos Vlachos;Shimin Chen;Phillip B. Gibbons;M. Kozuch;T. Mowry
DOI: 10.1145/1455770.1455778
发表时间: 2008-10
期刊: Proceedings of the 15th ACM conference on Computer and communications security
影响因子: --
作者:
W. Chang;Brandon Streiff;Calvin Lin
通讯作者: W. Chang;Brandon Streiff;Calvin Lin
DOI: 10.1145/1064978.1065034
发表时间: 2005-06-01
影响因子: --
作者:
Luk, CK;Cohn, R;Hazelwood, K
通讯作者: Hazelwood, K