Faultprog: Testing the Accuracy of Binary-Level Software Fault Injection

作者: Domenico Cotroneo , Anna Lanzaro , Roberto Natella

DOI: 10.1109/TDSC.2016.2522968

关键词: Computer engineeringRedundant codeFault injectionUnreachable codeTheoretical computer scienceSource codeComputer scienceStatic program analysisCode coverageDead codeBinary code

摘要: Off-The-Shelf (OTS) software components are the cornerstone of modern systems, including safety-critical ones. However, dependability OTS is uncertain due to lack source code, design artifacts and test cases, since only their binary code supplied. Fault injection in components’ a solution understand risks posed by buggy components. In this paper, we consider problem accurate mutation for fault purposes. emulates bugs high-level programming constructs (assignments, expressions, function calls, ...) mutating translation code. semantic gap between its often leads inaccurate mutations. We propose Faultprog , systematic approach testing accuracy tools. automatically generates synthetic programs using stochastic grammar, mutates both with tool under test, as reference comparisons. Moreover, present case study on commercial tool, where was adopted identify patterns compiler optimizations that affect accuracy.

参考文章(51)
William M. McKeeman, Differential Testing for Software. Digital Technical Journal. ,vol. 10, pp. 100- 107 ,(1998)
Ravi Sethi, Jeffrey D. Ullman, Alfred V. Aho, Compilers: Principles, Techniques, and Tools ,(1986)
S. Chandra, P.M. Chen, How fail-stop are faulty programs? ieee international symposium on fault tolerant computing. pp. 240- 249 ,(1998) , 10.1109/FTCS.1998.689475
Kim Herzig, Andreas Zeller, Christian Holler, Fuzzing with code fragments usenix security symposium. pp. 38- 38 ,(2012)
Donald R. Slutz, Massive Stochastic Testing of SQL very large data bases. pp. 618- 622 ,(1998)
Karama Kanoun, Lisa Spainhower, None, Dependability Benchmarking for Computer Systems ,(2008)
D.T. Stott, B. Floering, D. Burke, Z. Kalbarczpk, R.K. Iyer, NFTAPE: a framework for assessing dependability in distributed systems with lightweight fault injectors Proceedings IEEE International Computer Performance and Dependability Symposium. IPDS 2000. pp. 91- 100 ,(2000) , 10.1109/IPDS.2000.839467
Ishtiaque Hussain, Christoph Csallner, Mark Grechanik, Qing Xie, Sangmin Park, Kunal Taneja, B. M. Mainul Hossain, RUGRAT: Evaluating program analysis and testing tools and compilers with large generated random benchmark applications Software - Practice and Experience. ,vol. 46, pp. 405- 431 ,(2016) , 10.1002/SPE.2290
Jiesheng Wei, Anna Thomas, Guanpeng Li, Karthik Pattabiraman, Quantifying the Accuracy of High-Level Fault Injection Techniques for Hardware Faults dependable systems and networks. pp. 375- 382 ,(2014) , 10.1109/DSN.2014.2
Markus Becker, Daniel Baldin, Christoph Kuznik, Mabel Mary Joy, Tao Xie, Wolfgang Mueller, XEMU Proceedings of the tenth ACM international conference on Embedded software - EMSOFT '12. pp. 33- 42 ,(2012) , 10.1145/2380356.2380368