問題の信頼性は、それを裏付ける証拠の強度に依存します。セキュリティでは各問題に対応する証拠の種類を明記し、信頼できる検証記録を持つ証拠のみがpull requestをブロックしたり、誰かに通知したり、確認済みとしてカウントしたりできます。
3種類
| 証拠 | 意味 | 検証者 |
|---|---|---|
| アドバイザリー一致 | インストールされたパッケージのバージョンが公開されたアドバイザリーの影響範囲と完全に一致しました。 | スキャン自体:スキャナーとそのバージョン、Coroidが設定した構成、最終更新時刻が記載されたアドバイザリー。 |
| 検証済みの静的問題 | コードが脆弱なパターンに一致します。 | 校正を通過したルール、またはAIモデルが検出した問題については、そのコミットのコードから問題を再導出する独立したチェック。このチェックは問題を検出した実行とは別のものです。 |
| 再現された障害 | セキュリティ上の障害が実際に発生し、観測されました。 | 隔離された環境で実行される証明用の実行で、同じ結果が独立して再現されます。計画中:Coroidはまだ証明実行を行いません。 |
検証記録は1つのコミットに属します。次のコミットには引き継がれず、次回のスキャンで改めて観測されます。
各種類が可能にする処理
- 依存関係に関する問題アドバイザリー一致の場合にのみ適用されます。
- シークレットおよびコードルール校正を通過した検出器バージョンのみで適用されます。詳細は保護機能と適用。
- Coroidレビューのセキュリティ主張と監査結果独立したチェックで検証済みの静的問題として確認されない限り、ブロックや通知は行われません。
未確認
このような証拠がない問題は「未確認」として一覧表示されます。未確認。該当問題はセキュリティ画面に既知の情報とともに表示されますが、他の処理は行われません。つまりチェックに失敗したり、誰かに通知したり、概要で確認済みとしてカウントされたりしません。これは独立したチェックで確認できなかった場合にAIモデルの主張が留まる状態で、例えば問題を判定するコードが別のファイルにある場合などが該当します。
GitHubからインポートされたアラートで、Coroid自身のスキャンで確認されていないものは「未確認」と表示されます。GitHubからインポート、未確認、概要では別途カウントされます。Coroid自身のスキャンで確認されるまで通知やブロックは行われません。詳細はGitHubの権限とCoroidセキュリティチェック。
確認場所
問題のページには証拠、生成元、検証者が記載されます。修正用プルリクエストにも証拠が含まれます。依存関係の場合は、修正対象のアドバイザリーと変更前後のパッケージインベントリが該当します。詳細は修正用プルリクエスト。