Cross-program propagation of tainted data (such as sensitive information or user input) in an interactive IoT system is listed among the OWASP IoT top 10 most critical security risks. When programs run on distinct devices, as it occurs in IoT systems, they communicate through different channels in order to implement some functionality. Hence, in order to prove the overall system secure, an analysis must consider how these components interact. Standard taint analyses detect if a value coming from a source (such as methods that retrieve user input or sensitive data) flows into a sink (typically, methods that execute SQL queries or send data into the Internet), unsanitized (that is, not properly escaped). This work devises a cross-program taint analysis that leverages an existing intra-program taint analysis to detect security vulnerabilities in multiple communicating programs. The proposed framework has been implemented above the intra-program taint analysis of the Julia static analyzer. Preliminary experimental results on multi-program IoT systems, publicly available on GitHub, show that the technique is effective and detects inter-program flows of tainted data that could not be discovered by analyzing each program in isolation.
CITATION STYLE
Mandal, A., Ferrara, P., Khlyebnikov, Y., Cortesi, A., & Spoto, F. (2020). Cross-program taint analysis for IoT systems. In Proceedings of the ACM Symposium on Applied Computing (pp. 1944–1952). Association for Computing Machinery. https://doi.org/10.1145/3341105.3373924
Mendeley helps you to discover research relevant for your work.