2017 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE) (2017)
Urbana, IL, USA
Oct. 30, 2017 to Nov. 3, 2017
Bjorn Mathis , Saarland University, Saarbrücken, Germany
Vitalii Avdiienko , Saarland University, Saarbrücken, Germany
Ezekiel O. Soremekun , Saarland University, Saarbrücken, Germany
Marcel Bohme , National University of Singapore, Singapore
Andreas Zeller , Saarland University, Saarbrücken, Germany
Analyzing information flow is central in assessing the security of applications. However, static and dynamic analyses of information flow are easily challenged by non-available or obscure code. We present a lightweight mutation-based analysis that systematically mutates dynamic values returned by sensitive sources to assess whether the mutation changes the values passed to sensitive sinks. If so, we found a flow between source and sink. In contrast to existing techniques, mutation-based flow analysis does not attempt to identify the specific path of the flow and is thus resilient to obfuscation. In its evaluation, our MUTAFLOW prototype for Android programs showed that mutation-based flow analysis is a lightweight yet effective complement to existing tools. Compared to the popular FlowDroid static analysis tool, MutaFlow requires less than 10% of source code lines but has similar accuracy; on 20 tested real-world apps, it is able to detect 75 flows that FlowDroid misses.
Tools, Java, Instruments, Concrete, Prototypes, Smart phones
B. Mathis, V. Avdiienko, E. O. Soremekun, M. Bohme and A. Zeller, "Detecting information flow by mutating input data," 2017 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE), Urbana, IL, USA, 2017, pp. 263-273.