On the Security Blind Spots of Software Composition Analysis

06/08/2023
by   Jens Dietrich, et al.
0

Modern software heavily relies on the use of components. Those components are usually published in central repositories, and managed by build systems via dependencies. Due to issues around vulnerabilities, licenses and the propagation of bugs, the study of those dependencies is of utmost importance, and numerous software composition analysis tools have emerged to address those issues. A particular challenge are hidden dependencies that are the result of cloning or shading where code from a component is "inlined", and, in the case of shading, moved to different namespaces. We present an approach to detect cloned and shaded artifacts in the Maven repository. Our approach is lightweight in that it does not require the creation and maintenance of an index, and uses a custom AST-based clone detection. Our analysis focuses on the detection of vulnerabilities in artifacts which use cloning or shading. Starting with eight vulnerabilities with assigned CVEs (four of those classified as critical) and proof-of-vulnerability projects demonstrating the presence of a vulnerability in an artifact, we query the Maven repository and retrieve over 16k potential clones of the vulnerable artifacts. After running our analysis on this set, we detect 554 artifacts with the respective vulnerabilities (49 if versions are ignored). We synthesize a testable proof-of-vulnerability project for each of those. We demonstrate that existing SCA tools often miss these exposures.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
08/27/2021

A Comparative Study of Vulnerability Reporting by Software Composition Analysis Tools

Background: Modern software uses many third-party libraries and framewor...
research
07/18/2018

SySeVR: A Framework for Using Deep Learning to Detect Software Vulnerabilities

The detection of software vulnerabilities (or vulnerabilities for short)...
research
09/03/2020

Deep Learning based Vulnerability Detection: Are We There Yet?

Automated detection of software vulnerabilities is a fundamental problem...
research
12/25/2022

Assessing the Impact of Interface Vulnerabilities in Compartmentalized Software

Least-privilege separation decomposes applications into compartments lim...
research
09/18/2021

SōjiTantei: Function-Call Reachability Detection of Vulnerable Code for npm Packages

It has become common practice for software projects to adopt third-party...
research
06/04/2020

Vulnerability Analysis of 2500 Docker Hub Images

The use of container technology has skyrocketed during the last few year...
research
07/05/2018

Improving Fuzzing Using Software Complexity Metrics

Vulnerable software represents a tremendous threat to modern information...

Please sign up or login with your details

Forgot password? Click here to reset