2020-0708-Neutaint
会议:S&P’20
Neutaint: Efficient Dynamic Taint Analysis with Neural Networks
目前的动态污点分析技术主要使用rule-base taint-propagation来实现,但其在准确度(假阳性高)、性能方面存在不足,在现实世界软件中存在较大的局限性。
作者使用neural network,将程序embed进网络中,通过大量的输入输出、execution traces放在end-to-end网络中进行训练,在sources和sinks之间建模。作者使用saliency map来发现most influential sources for different sinks。
简而言之,就是使用neural network训练程序的输入输出、执行路径,以发现hot byte(We define importance bytes that can maximally influence the variables in program branches as hot bytes.)
motivating example:rule-base taint-propagation的污点分析会认为z受到x[0]、x[1]的影响且不能判断这两个影响的比重,neutaint通过观察source&sink的值,发现z仅受到x[0]的影响。