An in-depth study of software library upgrade dependency issues

The massive demand of software systems brought about a growth in efficiency in software creation. As such, it is standard practice for modern day developers to reuse codes written not just by themselves but from third-party developers in the form of libraries. These third-party libraries are consis...

Full description

Saved in:
Bibliographic Details
Main Author: Teo, Dave Hwa Tao
Other Authors: Li Yi
Format: Final Year Project
Language:English
Published: Nanyang Technological University 2023
Subjects:
Online Access:https://hdl.handle.net/10356/165991
Tags: Add Tag
No Tags, Be the first to tag this record!
Institution: Nanyang Technological University
Language: English
id sg-ntu-dr.10356-165991
record_format dspace
spelling sg-ntu-dr.10356-1659912023-04-21T15:38:05Z An in-depth study of software library upgrade dependency issues Teo, Dave Hwa Tao Li Yi School of Computer Science and Engineering yi_li@ntu.edu.sg Engineering::Computer science and engineering::Software The massive demand of software systems brought about a growth in efficiency in software creation. As such, it is standard practice for modern day developers to reuse codes written not just by themselves but from third-party developers in the form of libraries. These third-party libraries are consistently growing and updated through time, which can have an adverse impact on all software utilizing them, such as the growth of security vulnerabilities unbeknownst to the software creator. These vulnerabilities can be exploited by malicious users, which can have deadly consequences depending on the nature of the software. Furthermore, compatibility issues between third-party libraries and the software that utilizes them can arise due to negligence and the lack of regular updates for these libraries. This final year project will be an extension of a previous study done by my senior, Nicholas Yeo Ming Jie (Project ID: SCSE21-0215), which had proposed a method to detect these vulnerabilities using Concrete Syntax Tree (CST) generated by parsing projects using LibCST. A discussion on the effort needed to detect, prevent, or mitigate these issues will be made in the report. The methods used to detect vulnerabilities will be applied to 15 open-source projects written in Python. We will be analyzing 6 different libraries, with 5 projects under each library. In this study, it has further acknowledged the findings in the previous study that there is a high level of third-party library dependency. This result is due to the large amount of Application Programming Interface (API) calls made from the selected open-source projects, and the high number of distinct usage patterns. The findings have further proven that the detection of security vulnerabilities is extremely important, and there is a need to further investigate the security vulnerabilities that affect these software libraries as the potential impact can be extremely harmful. Bachelor of Engineering Science (Computer Science) 2023-04-18T05:37:08Z 2023-04-18T05:37:08Z 2023 Final Year Project (FYP) Teo, D. H. T. (2023). An in-depth study of software library upgrade dependency issues. Final Year Project (FYP), Nanyang Technological University, Singapore. https://hdl.handle.net/10356/165991 https://hdl.handle.net/10356/165991 en SCSE22-0202 application/pdf Nanyang Technological University
institution Nanyang Technological University
building NTU Library
continent Asia
country Singapore
Singapore
content_provider NTU Library
collection DR-NTU
language English
topic Engineering::Computer science and engineering::Software
spellingShingle Engineering::Computer science and engineering::Software
Teo, Dave Hwa Tao
An in-depth study of software library upgrade dependency issues
description The massive demand of software systems brought about a growth in efficiency in software creation. As such, it is standard practice for modern day developers to reuse codes written not just by themselves but from third-party developers in the form of libraries. These third-party libraries are consistently growing and updated through time, which can have an adverse impact on all software utilizing them, such as the growth of security vulnerabilities unbeknownst to the software creator. These vulnerabilities can be exploited by malicious users, which can have deadly consequences depending on the nature of the software. Furthermore, compatibility issues between third-party libraries and the software that utilizes them can arise due to negligence and the lack of regular updates for these libraries. This final year project will be an extension of a previous study done by my senior, Nicholas Yeo Ming Jie (Project ID: SCSE21-0215), which had proposed a method to detect these vulnerabilities using Concrete Syntax Tree (CST) generated by parsing projects using LibCST. A discussion on the effort needed to detect, prevent, or mitigate these issues will be made in the report. The methods used to detect vulnerabilities will be applied to 15 open-source projects written in Python. We will be analyzing 6 different libraries, with 5 projects under each library. In this study, it has further acknowledged the findings in the previous study that there is a high level of third-party library dependency. This result is due to the large amount of Application Programming Interface (API) calls made from the selected open-source projects, and the high number of distinct usage patterns. The findings have further proven that the detection of security vulnerabilities is extremely important, and there is a need to further investigate the security vulnerabilities that affect these software libraries as the potential impact can be extremely harmful.
author2 Li Yi
author_facet Li Yi
Teo, Dave Hwa Tao
format Final Year Project
author Teo, Dave Hwa Tao
author_sort Teo, Dave Hwa Tao
title An in-depth study of software library upgrade dependency issues
title_short An in-depth study of software library upgrade dependency issues
title_full An in-depth study of software library upgrade dependency issues
title_fullStr An in-depth study of software library upgrade dependency issues
title_full_unstemmed An in-depth study of software library upgrade dependency issues
title_sort in-depth study of software library upgrade dependency issues
publisher Nanyang Technological University
publishDate 2023
url https://hdl.handle.net/10356/165991
_version_ 1764208171630460928