kirancodes.me
To Proof Maintenance & Beyond!

ViaLin: Path-Aware Dynamic Taint Analysis for Android

Khaled Ahmed, Yingying Wang, Mieszko Lis, Julia Rubin

Abstract

Dynamic taint analysis - a program analysis technique that checks whether information flows between particular source and sink locations in the program, has numerous applications in security, program comprehension, and software testing. Specifically, in mobile software, taint analysis is often used to determine whether mobile apps contain stealthy behaviors that leak user-sensitive information to unauthorized third-party servers. While a number of dynamic taint analysis techniques for Android software have been recently proposed, none of them are able to report the complete information propagation path, only reporting flow endpoints, i.e., sources and sinks of the detected information flows. This design optimizes for runtime performance and allows the techniques to run efficiently on a mobile device. Yet, it impedes the applicability and usefulness of the techniques: an analyst using the tool would need to manually identify information propagation paths, e.g., to determine whether information was properly handled before being released, which is a challenging task in large real-world applications.

BibTeX
@inproceedings{Ahmed-al:FSE23,
  author    = {Khaled Ahmed and
               Yingying Wang and
               Mieszko Lis and
               Julia Rubin},
  title     = {{ViaLin:} {Path-Aware} Dynamic Taint Analysis for Android},
  booktitle = {{ESEC/SIGSOFT} {FSE}},
  pages     = {1598--1610},
  publisher = {{ACM}},
  year      = {2023},
}

Related papers