TY - GEN
T1 - Taint propagation path analysis based on program dependency
AU - Wang, Y.
AU - Wang, C.
AU - Hu, Changzhen
AU - Shan, C.
N1 - Publisher Copyright:
© 2015 Taylor & Francis Group, London.
PY - 2015
Y1 - 2015
N2 - Taint propagation path analysis is an important pre-processing part to software vulnerability detection. This paper presents a static taint propagation path analysis method based on program dependency. After transforming the source code to the SSA (Static Single Assignment) form, we make a program dependency analysis, which consists of data dependency analysis within basic blocks, control dependency analysis between basic blocks, and Phi function dependency analysis. In particular, the branch control variables calculation from control dependency analysis and Phi function dependency analysis can transform the dependency between basic blocks into dependency between variables. As a result, we obtain the global program variable dependency graph, based on which, we can further find taint propagation paths through marking tainted data.We have implemented the method on the LLVM (Low Level Virtual Machine) compiler, and the experiment results show its validity.
AB - Taint propagation path analysis is an important pre-processing part to software vulnerability detection. This paper presents a static taint propagation path analysis method based on program dependency. After transforming the source code to the SSA (Static Single Assignment) form, we make a program dependency analysis, which consists of data dependency analysis within basic blocks, control dependency analysis between basic blocks, and Phi function dependency analysis. In particular, the branch control variables calculation from control dependency analysis and Phi function dependency analysis can transform the dependency between basic blocks into dependency between variables. As a result, we obtain the global program variable dependency graph, based on which, we can further find taint propagation paths through marking tainted data.We have implemented the method on the LLVM (Low Level Virtual Machine) compiler, and the experiment results show its validity.
KW - Branch control variables
KW - Control dependency
KW - Data dependency
KW - Phi function
KW - SSA
KW - Taint propagation path analysis
KW - Value dependency graph
UR - https://www.scopus.com/pages/publications/84940473809
U2 - 10.1201/b18049-38
DO - 10.1201/b18049-38
M3 - Conference contribution
AN - SCOPUS:84940473809
SN - 9781138026537
T3 - Future Communication, Information and Computer Science - Proceedings of the International Conference on Future Communication, Information and Computer Science, FCICS 2014
SP - 159
EP - 164
BT - Future Communication, Information and Computer Science - Proceedings of the International Conference on Future Communication, Information and Computer Science, FCICS 2014
A2 - Zheng, Dawei
PB - CRC Press/Balkema
T2 - International Conference on Future Communication, Information and Computer Science, FCICS 2014
Y2 - 22 May 2014 through 23 May 2014
ER -