EN
ENNA

Syft

Apache-2.0

๐Ÿ“ฆ Container Security ยท Go

Syft is a CLI tool and Go library from Anchore for generating a Software Bill of Materials (SBOM) from container images and filesystems. It catalogues all packages, libraries, and dependencies present in a container image or directory, producing structured output in SPDX, CycloneDX, or Syft's native JSON format. Syft supports package detection for Alpine (apk), Debian (dpkg), Red Hat (rpm), Python (pip/poetry/pipenv), JavaScript (npm/yarn), Java (Maven/Gradle), Go modules, Rust (Cargo), Ruby (Gems), .NET (NuGet), and many other package ecosystems. SBOMs are increasingly required for software supply chain security compliance, and Syft integrates with Grype (Anchore's vulnerability scanner) to check the generated SBOM against known vulnerability databases. This pairing provides a complete supply chain security workflow: know what you're running (Syft) and whether it's vulnerable (Grype).

8.6kstars
798forks
569issues
Updated 4d ago

Installation

brew (macOS)

$ brew install syft

curl

$ curl -sSfL https://raw.githubusercontent.com/anchore/syft/main/install.sh | sh -s -- -b /usr/local/bin

Go

$ go install github.com/anchore/syft@latest

Use Cases

  • Generating Software Bill of Materials for container images before deployment
  • Cataloguing all packages and dependencies in production container images
  • Meeting supply chain security compliance requirements with SPDX/CycloneDX output
  • Pairing with Grype to scan SBOMs for known vulnerabilities
  • Integrating SBOM generation into CI/CD pipelines for continuous visibility

Tags

sbomsupply-chainspdxcyclonedxcontainer-scanningdependencycontainersdockergogolanghacktoberfestocistatic-analysistool

More in Container Security