In an era where software systems underpin critical infrastructure, ensuring their security and reliability is paramount. However, the evolving complexity of modern software poses significant challenges for traditional security measures. Our project is dedicated to fortifying software security and reliability through a multifaceted approach that integrates cutting-edge techniques and methodologies. We focus on leveraging advanced technologies such as Large Language Models (LLMs) and Static Program Analysis to safeguard individual program and software supply chains against a wide range of security threats. Ultimately, our goal is to empower organizations to proactively identify, mitigate, and prevent security threats, thereby safeguarding critical infrastructure, sensitive data, and user privacy.
Software supply chains play a critical role in delivering reliable and secure software products to end-users. However, recent high-profile security breaches and supply chain attacks have highlighted the vulnerabilities inherent in these systems. This project focuses on enhancing software supply chain security through innovative techniques such as fine-grained program dependency construction, clone detection, vulnerability recognization, vulnerability propagation analysis, security pre-warning, and more. The ultimate goal of this project aligns closely with the principles of AppSecOps, aiming to integrate security practices into the application development and operations processes to enhance the security of software applications throughout their lifecycle. We aims to help organizations build and deploy more secure, resilient, and reliable software applications in today's rapidly evolving threat landscape.
In response to security and reliability issue in individual programs and software supply chain, this project harnesses the power of Large Language Models (LLMs) to revolutionize software security practices. This project aims to develop an advanced software security solution that leverages LLMs to automate and enhance test case generation, vulnerability detection, localization, and repair processes. By harnessing the immense language understanding capabilities of LLMs, we seek to significantly improve the efficiency, accuracy, and scalability of software security practices.
Beyond LLM, we are also working on defect and vulnerability detection based on static program analysis. Our project aims to develop an advanced software quality assurance solution that leverages Code Property Graph (CPG) analysis techniques to automate and enhance defect and vulnerability detection processes. By analyzing the control flow, data flow, and inter-module dependencies within software systems, we seek to identify potential defects, vulnerabilities, and security weaknesses with unprecedented accuracy and efficiency. Specifically, we design algorithm for storing CPG data, efficient strategies for querying CPG, and user-friendly DSL for defining querying patterns. We aim to support various types of program languages, including C, Java, Python and ArkTS.
International Symposium on Software Testing and Analysis (ISSTA), 2024.
International Conference on the Foundations of Software Engineering (FSE), 2024.
International Conference on Software Analysis, Evolution and Reengineering (SANER), 2024.
IEEE TCSE Distinguished Paper Award
International Conference on Software Analysis, Evolution and Reengineering (SANER), 2024.
International Conference on Automated Software Engineering (ASE) 2023, 2023.
International Conference on Software Engineering (ICSE) 2023, 2023.
The 45th International Conference on Software Engineering (ICSE), 2023.
The 22nd IEEE International Conference on Software Quality, Reliability, and Security (QRS), 2022.
IEEE/ACM International Conference on Automated Software Engineering (ASE), 2022.
ACM International Symposium on Software Testing and Analysis (ISSTA), 2022.
The 44th International Conference on Software Engineering (ICSE), 2022.
Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), 2021.
International Symposium on Software Testing and Analysis (ISSTA), 2021.
Distinguished Artifact Award
The 35th IEEE/ACM International Conference on Automated Software Engineering (ASE), 2020.
The 42nd International Conference on Software Engineering (ICSE), 2020.
Yijun Shen
Ph.D. 2020
Software Supply Chain
Liyou Chen
Ph.D. 2022
Vulnerability recognization
Wentong Tian
Ph.D. 2022
LLM for vulnerability analysis
Yunlong Ma
Ph.D. 2022
Combining static analysis with LLM
Qingao Dong
Ph.D. 2022
Vulnerability Repair
Yuanzhang Lin
Ph.D. 2023
UI Testing
Yixin Yang
Ph.D. 2023
Vulnerability detection
Chenfan Li
Ph.D. 2024
TBD
Shuo Hong
Master 2022
Static program analysis
Zhe Zhang
Master 2023
Fuzzing
Bowen Xu
Master 2023
LLM for vulnerability analysis
Hao Gao
Master 2023
LLM for code generation
Yi Xu
Master 2023
Software Supply Chain
Yu Guo
Master 2023
Software Supply Chain
Zuozhou Zhang
Master 2023
Software Supply Chain
Yifan An
Master 2024
TBD
Xingyu Liu
Master 2024
TBD
Rui He
Master 2024
TBD
Chang Liu
Master 2024
TBD
Xingjing Deng
Master 2024
Static program analysis