Over the years, the use of open-source libraries and components has become an indispensable part of our application development processes. Thanks to the power of the community, libraries and components that successfully handle many fundamental — and even complex — operations have emerged.
At this point, we have access to components that already have working solutions, have been tested by many different people, have had their bugs resolved in proportion to their usage, and no longer need to be rewritten. Everything described so far represents the full side of the glass. On the empty side, however, are those with malicious intent.
Libraries and components known to be used by thousands or even millions of people are in a highly attractive position for reaching vast audiences all at once — and even infiltrating their systems. For this reason, many attackers today target projects hosted on source code and package management/distribution platforms such as NPM, PyPI, and GitHub.
In a scenario where attackers successfully infiltrate a targeted package and/or application, they will have simultaneously gained access to all systems using that library and/or application — you can reach our research on recent Supply Chain Security incidents here.
Fortunately, the ecosystem is not made up of malicious actors alone. Many individuals and even organizations regularly carry out work in areas such as identifying potential security vulnerabilities in projects within the ecosystem and detecting malicious content added to libraries and applications by attackers.