言語別の依存関係スキャン(SCA)対応
Aikido は、すべての push と pull request に対して、IDE 上でリアルタイムに、またスケジュールされた再スキャン(デフォルトは毎日)として SCA を実行し、変更されていない依存関係に対しても新たに公開された CVE を検出できるようにします。SCA は既知の CVE とリスクの高いオープンソースライセンスをカバーします。
以下は、対応している言語とそれぞれの lockfile の一覧です。lockfile は、ビルド時の速度を向上させ、ビルドの再現性を高め、サプライチェーン攻撃に対する第一の防御層となるため、デフォルトでの使用を推奨します。もちろん、lockfile は Aikido が脆弱なパッケージを見つけるのにも役立ちます。
lockfile は、ルートおよびすべてのサブフォルダ内でスキャンします。
| Language | スキャン対象の lockfile |
|---|---|
JavaScript | npm-shrinkwrap.json package-lock.json yarn.lock pnpm-lock.yaml pnpm-lock.yml bun.lock deno.lock libman.json |
| PHP | composer.lock |
| Java | gradle.lockfile build.gradle pom.xml .jar .war .ear |
| Swift | Package.resolved Podfile.lock |
| Go | go.mod |
| Python | Pipfile.lock poetry.lock uv.lock pdm.lock requirements.txt requirements.lock Conda: requirements.yml |
| .NET | .csproj .deps.json packages.lock.json packages.config Packages.props |
| Ruby | gemfile.lock |
| Rust | cargo.lock cargo.toml |
| Kotlin | build.gradle.kts, gradle.lockfile |
| Dart | pubspec.lock |
| Elixir | mix.lock |
| C/C++ | conan.lock vcpkg.json lockfile のない C/C++ 依存関係 (詳細情報) |
| Scala | build.sbt plugins.sbt dependencies.scala libraries.scala .sbt.lock |
| Clojure | deps.edn |
| Unity UPM | packages-lock.json(Aikido は NPM から取得した UPM パッケージのみをスキャンしてインポートします) |