コンテンツにスキップ

ソースコードスキャン

ソースコードスキャンは、本番環境に到達する前にソースコード内のセキュリティ脆弱性を直接特定するのに役立ちます。ソースコードリポジトリをOstorlabに接続することで、プロジェクトの一般的なセキュリティ問題をスキャンし、実用的な検出結果を確認し、開発ライフサイクルの早い段階で修正の優先順位を付けることができます。

このガイドでは、ソースコード統合の構成と最初のスキャンの実行手順を説明します。


⚙️ ソースコード統合の構成

リポジトリをスキャンする前に、ソースコードプロバイダーをOstorlabに接続する必要があります。

  1. Ostorlabダッシュボードを開きます。
  2. 左上隅ハンバーガーメニューをクリックします。
  3. Integrations(統合)に移動します。 Integrationsの選択
  4. Source Code(ソースコード)カテゴリを選択します。 Source Codeカテゴリの選択
  5. 接続するソースコードプロバイダー(GitHubGitLabBitbucketAzure DevOps、またはセルフホストGit)を選択します。
  6. プロバイダー固有の構成手順に従って、リポジトリへのアクセスを承認します。

統合が完了すると、ソースコードスキャンを作成する際にリポジトリを選択できるようになります。


🚀 新規ソースコードスキャンの作成

ステップ 1: 新規スキャンの実行

統合を設定した後:

  1. Ostorlabダッシュボードを開きます。
  2. サイドバーのハンバーガーメニューアイコンをクリックし、Scanning -> New Scanを選択します。 新規スキャンの実行
  3. (任意)セキュリティ監査の説明的なタイトルを入力します。 スキャンタイトルの入力

ステップ 2: スキャンアセットの選択

新規スキャンを作成する際:

  1. スキャンアセットとしてCode Repository(コードリポジトリ)を選択します。 Code Repositoryの選択
  2. スキャンするリポジトリを選択します。 リポジトリの選択
  3. 適切なTarget Typeを選択します。
  4. Continueをクリックします。

ステップ 3: AIプロバイダーとエフォートの構成

ソースコードスキャンは、OstorlabのCybermodelsまたはBring Your Own Key (BYOK)によるカスタムAPIキーを使用して実行できる、エージェント型AI駆動スキャンです。

  1. スキャンに使用するAIプロバイダーをCybermodelsまたはBYOKから選択します。 AIプロバイダーの選択
  2. または、AIプロバイダーとしてBYOKを選択します。 BYOKの選択

ステップ 4: エフォートレベルの構成

エフォートレベルは、Ostorlabがリポジトリをどの程度広範囲に分析するかを決定します。エフォートレベルを高くすると、コードカバー率が広がり、より詳細な分析が行われますが、スキャンの所要時間とAIトークンの消費量が増加する可能性があります。

  1. リポジトリとセキュリティ要件に最も適したエフォートレベルを選択してください:
    • Core(50トークン): 高速なベースライン分析を実行します。開発中の迅速なセキュリティチェックに最適です。
    • Advanced(200トークン): より広いコードカバレッジで深い分析を提供し、より幅広いセキュリティ問題を特定します。
    • Elite(400トークン): 最も包括的な分析を実行し、複雑で発見が困難な脆弱性を検出するためのカバレッジを最大化します。 エフォートレベルの構成
  2. Continueをクリックします。

ステップ 5: スキャンプロファイルの選択

Repository Scan Profileを選択し、Submitをクリックしてスキャンを開始します。 スキャンプロファイルの選択

ステップ 6: 結果の確認

スキャンが完了すると、検出されたセキュリティ結果をOstorlabダッシュボードで確認できます。

各検出結果には、深刻度、影響を受けるファイル、およびセキュリティ問題を優先して解決するための修正ガイダンスが含まれています。

スキャン結果の確認


🌍 サポートされている言語

ソースコードスキャンは、以下の言語を含むすべてのプログラミング言語をサポートしています。

  • JavaScript
  • TypeScript
  • ArkScript
  • Java
  • Kotlin
  • Dart
  • Swift
  • Objective-C
  • C#
  • C
  • C++
  • Rust
  • Zig
  • Python
  • PHP
  • Hack
  • Ruby
  • Scala
  • Go
  • Elixir
  • Erlang
  • Clojure
  • Groovy
  • Perl
  • Lua
  • Haskell
  • Julia
  • OCaml
  • F#
  • Lisp/Common Lisp
  • Prolog
  • V
  • Nim
  • Crystal
  • D
  • Assembly
  • Fortran
  • COBOL
  • Delphi/Object Pascal
  • Pascal
  • APL
  • Apex
  • ABAP
  • GDScript
  • Elm
  • ReasonML/ReScript
  • VBA
  • Visual Basic .NET
  • Visual Basic 6
  • Move
  • Solidity
  • Vyper
  • Cairo