FOSSA Logo

Supply Chain Attack

A cyberattack that targets the less-secure elements in the software supply chain to compromise the intended target.

What is a Supply Chain Attack?

A software supply chain attack occurs when attackers compromise the development, build, or distribution environments of software applications to insert malicious code or exploit vulnerabilities. Instead of directly targeting the final software product or its users, attackers focus on the less-secure elements in the chain of software development and delivery.

Common Types of Supply Chain Attacks

  1. Compromised Dependencies: Attackers inject malicious code into open source libraries and packages used by developers.

  2. Dependency Confusion: Attackers exploit how package managers resolve dependencies to trick builds into pulling malicious packages.

  3. Compromised Development Tools: Attackers target the tools used in development, like IDEs, compilers, or build systems.

  4. Code Signing Compromise: Attackers steal or forge code signing keys to make malicious updates appear legitimate.

  5. CI/CD Pipeline Attacks: Exploiting continuous integration/continuous delivery systems to inject malicious code during builds.

Notable Supply Chain Attacks

  • SolarWinds (2020): Attackers compromised the build system to insert a backdoor into software updates, affecting thousands of organizations including government agencies.

  • Log4Shell (2021): A critical vulnerability in the widely-used Log4j logging library exposed millions of applications to remote code execution.

  • Codecov (2021): Attackers modified a script in the Codecov bash uploader, potentially compromising sensitive information from thousands of CI/CD pipelines.

Prevention Measures

  • Implement rigorous security controls for development environments and build systems
  • Use verified, trusted dependencies and regularly audit them
  • Generate and verify Software Bills of Materials (SBOMs)
  • Implement multiple layers of verification before code is deployed
  • Adopt supply chain security frameworks (e.g., SLSA, SSDF)
  • Enforce the principle of least privilege throughout the development process