Software Security

Motivation: Modern software systems are increasingly complex and interconnected, making them vulnerable to various security threats. Ensuring the security and reliability of software is crucial to protect sensitive data, maintain user trust, and prevent costly breaches and attacks.

Approach: To address software security challenges, we need to develop advanced techniques for analyzing and securing software systems. Our research focuses on leveraging program analysis and learning-based approaches to identify and mitigate security risks, enhance software reliability, and protect against emerging threats. We have designed a comprehensive array of novel automated solutions, including:

  • Deep learning-based malware detection: We have developed innovative deep learning models to accurately detect and classify malware in Android applications. Our work includes a systematic literature review of deep learning techniques for Android malware defenses [ CSUR 22] and an explainable AI approach to understanding why these models perform so well [ ISSRE 22].
  • Identifying security risks through program analysis: We have applied program analysis techniques to identify and mitigate security vulnerabilities in software systems. Our work includes valuating security risks in VSCode extensions through taint analysis (under review), and understanding and preventing data exposure in VSCode extensions (under review).
  • Reliability: Automated analysis for software security is essential, but program analysis often results in high false negatives, while learning-based approaches can suffer from experimental biases. For example, our research [ISSRE 22] shows that temporal sample inconsistency in the training dataset leads to over-optimistic classification performance (up to 99% F1 score and accuracy). Importantly, our results indicate that ML models classify malware based on temporal differences between malware and benign samples, rather than the actual malicious behaviors.
  • Related Publications

    Deep Learning for Android Malware Defenses: a Systematic Literature Review
    Yue Liu, Chakkrit Tantithamthavorn, Li Li, and Yepang Liu
    ACM Computing Surveys (CSUR 2022), 55(8): 1-36 (Core A*, SCI-Q1)

    Explainable AI for Android Malware Detection: Towards Understanding Why the Models Perform So Well?
    Yue Liu, Chakkrit Tantithamthavorn, Li Li, and Yepang Liu
    33rd International Symposium on Software Reliability Engineering (ISSRE 2022), 169-180 (Core A, CCF B)

    Detecting Temporal Inconsistency in Biased Datasets for Android Malware Detection
    Haonan Hu, Yue Liu, Yanjie Zhao, Yonghui Liu, Xiaoyu Sun, Chakkrit Tantithamthavorn, and Li Li
    38th IEEE/ACM International Conference on Automated Software Engineering Workshops (ASEW 2023), 17-23

    TaintVSCode: Evaluating VSCode Extensions Security Risks Through Taint Analysis
    Yue Liu, Yanjie Zhao, Chakkrit Tantithamthavorn, Li Li and David Lo
    Under Review

    Protect Your Secrets: Understanding and Preventing Data Exposure in VSCode Extensions
    Yue Liu, Chakkrit Tantithamthavorn, and Li Li
    Under Review