SDP

Software Supply Chain Security

What are we doing?

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.

Recent Updates


  • Mar, 2024 Our papers "API Misuse Detection via Probabilistic Graphical Model" and "Model-less Is The Best Model: Generating Pure Code Implementations to Replace On-device DL Models" have been accepted by ISSTA 2024 research paper track.
  • Mar, 2024 Our SANER'24 paper "Investigating and Detecting Silent Bugs in PyTorch Programs" won IEEE TCSE Distinguished Paper Award.
  • Jan, 2024 our paper "ProveNFix: Temporal Property guided Program Repair" has been accepted by the FSE'24 research papers track.
  • Aug, 2023 our paper "Automated Fixing of Web UI Tests via Iterative Element Matching" has been accepted by the ASE'23 research papers track.
  • Dec, 2022 our paper "Template-based Neural Program Repair" has been accepted by the ICSE'23 technical track.
  • Dec, 2022 our paper "A Collaboration-Aware Approach to Profiling Developer Expertise with Cross-Community Data" has been accepted by the QRS'22 regular papers track.
  • Jul, 2022 Wang Jing has successfully defended her master thesis, and won Outstanding Graduates award of Beihang University. She is moving to Bank of China.
  • Jun, 2022 Yongqiang's work on developer portrait has beed accepted by Huawei OpenEuler Community.
  • Apr, 2022 our paper "Program Vulnerability Repair via Inductive Inference" has been accepted by the ISSTA'22 technical papers track.
  • Dec, 2021 our paper "Improving Fault Localization and Program Repair with Deep Semantic Features and Transferred Knowledge." has been accepted by the ICSE'22 technical papers track.

Current Projects

Software Supply Chain security

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.

LLM for software security analysis

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.

Static program analysis based on CPG

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.

Publications

Selected Research Papers

Our Team

Faculty


Hailong Sun (孙海龙)

Professor

School of Software, Beihang

sunhl [at] buaa.edu.cn


Xiang Gao (高祥)

Associate Professor

School of Software, Beihang

xiang_gao [at] buaa.edu.cn

Students

Ph.D. Students

...

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

Master's Students

...

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