SCA

対応する検査方法

  • 利用できる方法
    • 依存関係ファイルを使った、ビルドなしでの検査
    • gradle.lockがない場合の検査

ビルドを伴う検査

1. 出力したSBOMによる検査

プロジェクトをビルドできる場合は、ビルド時にSBOMを生成し、そのパッケージ情報を使って検査できます。

2. ビルド成果物の検査

ビルド済みのJARファイルや、インストール済みのnode_modulesディレクトリも検査できます。

ビルドなしでの検査

言語 依存関係ファイル
C/C++
  • conan.lock
Dart
  • pubspec.lock
Elixir
  • mix.lock
Go
  • go.mod
Haskell
  • cabal.project.freeze
  • stack.yaml.lock
Java
  • buildscript-gradle.lockfile
  • gradle.lockfile
  • gradle/verification-metadata.xml
  • pom.xml
JavaScript
  • package-lock.json
  • pnpm-lock.yaml
  • yarn.lock
.NET
  • deps.json
PHP
  • composer.lock
Python
  • Pipfile.lock
  • poetry.lock
  • requirements.txt
  • pdm.lock
  • uv.lock
R
  • renv.lock
Ruby
  • Gemfile.lock
Rust
  • Cargo.lock

Rustソースコードの到達可能性

RustのSCAでは、Cargo.lockで確認したcrates.ioパッケージと、ソースコードの到達可能性を示す情報を組み合わせます。

  • 脆弱性を評価する際は、関連APIの利用状況とパッケージのバージョンを併せて確認します。
  • 悪意のあるパッケージについては、プロジェクトでそのパッケージを使用しているか確認します。

イメージとコンテナーの検査

Dockerコンテナーイメージも検査できます。