Snyk Report機能について~Issues Detail report~
おはようございます( ◜◡◝ )
ゲームソリューション部/業務効率化ソリューション部のきだぱんです。
脆弱性管理ツールのSnykというSaas製品をご存知でしょうか。
セキュリティ対策が重要性を増す昨今、多くの開発チームが脆弱性管理に頭を悩ませています。
Snykのレポート機能は、この課題に対する効果的なソリューションを提供してくれます。
本記事では、Snykのエンタープライズプラン向けレポート機能のIssues Detail reportの詳細について解説します。
Snykとは
そもそもSnykとは、何なのか。 Snyk(スニーク)はデベロッパーファーストのセキュリティプラットフォームです。
Snykは、コードやオープンソースとその依存関係、コンテナやIaC(Infrastructure as a Code) における脆弱性を見つけるだけでなく、優先順位をつけて修正するためのツールです。 Gitや統合開発環境(IDE)、CI/CDパイプラインに直接組み込むことができるので、デベロッパーが簡単に使うことができます。
Snyk は、Java、.NET、JavaScript、Python、Golang、PHP、C/C++、Ruby、Scalaなど、多くの言語とツールをサポートしています。
また、Docker、Terraform、k8s、Infrastructure as Codeのファイルスキャンもサポートしています。
Snykの主要機能
機能名 | 概要 | 分類 |
---|---|---|
Snyk Code | 開発中のコードの脆弱性を指摘 | SAST (Static Application Security Testing) |
Snyk OSS | オープンソースのコンポーネントのセキュリティ管理を自動化 | SCA (Software Composition Analysis) |
Snyk Container | コンテナイメージの脆弱性管理 | コンテナセキュリティ |
Snyk IaC | TerraformなどのInfrastructure as Codeの設定ファイルの問題点を指摘 | インフラストラクチャセキュリティ |
レポート機能について
前提として、Snykレポート機能は、エンタープライズプランのみの機能となります。
Issues Detail reportについて
Snykが管理する自組織のアプリケーションで検出された脆弱性のサマリを表示することができます!
Issues Detail reportでは、Issueの詳細を確認でき、プロジェクト全体で発見されたIssueを包括的に可視化できます。
検出された各Issueについて、その詳細な情報が一目で分かるように表示され、さらに具体的な修正方法へのリンクも提供されています。
またIssueの分析をより効率的に行えるよう、さまざまな集計機能が実装されています。
レポートでは問題の総数だけでなく、固有の脆弱性数も明確に示されます。
重要度、製品名、問題タイプなどの観点から問題を分類し、クイック集計による即座の状況把握が可能です。優先度の高い問題から順番に対処していくことができます。
大項目には3種類表示可能です
Issueの重要度
Critical、High、Medium、Lowの個数を表示します
Product
Snykには、Code、IaC、Container、OpenSouceの機能があるので、機能ごとの個数を表示できます
Issue Type
VULNERABILITY(脆弱性)、CONFIGURATION(設定まわり)、LICENSE(ソフトウェアライセンス違反)で表示されます。
表示形式についても、ユーザーのニーズに合わせて柔軟にカスタマイズすることができます。
カテゴリー別の表示切り替えや、テーブルの列の調整など、必要な情報を最適な形で確認できるよう工夫されています。
レポートへ、[modify Columns]]から以下の項目を表示、非表示が可能です。
カテゴリ | 項目 |
---|---|
重要度・スコア | SEVERITY (重要度) |
SCORE (スコア) | |
SNYK CVSS SCORE (Snyk CVSSスコア) | |
NVD SCORE (NVDスコア) | |
NVD SEVERITY (NVD重要度) | |
EPSS SCORE (EPSSスコア) | |
EPSS PERCENTILE (EPSSパーセンタイル) | |
脆弱性識別情報 | CVE (共通脆弱性識別子) |
CWE (共通脆弱性タイプ) | |
PROBLEM ID (問題ID) | |
VULNERABILITY PUBLICATION DATE (脆弱性公開日) | |
EXPLOIT MATURITY (エクスプロイト成熟度) | |
ATTACK VECTOR (攻撃ベクトル) | |
REACHABILITY (到達可能性) | |
プロジェクト情報 | PROJECT (プロジェクト) |
PROJECT COLLECTION (プロジェクトコレクション) | |
PROJECT CRITICALITY (プロジェクト重要度) | |
PROJECT ENVIRONMENT (プロジェクト環境) | |
PROJECT LIFECYCLE (プロジェクトライフサイクル) | |
PROJECT ORIGIN (プロジェクト起源) | |
PROJECT OWNER (プロジェクト所有者) | |
PROJECT TAGS (プロジェクトタグ) | |
PROJECT TARGET (プロジェクトターゲット) | |
PROJECT TYPE (プロジェクトタイプ) | |
コード・パッケージ | CODE REGION (コード領域) |
COMMIT ID (コミットID) | |
FILE PATH (ファイルパス) | |
PACKAGE NAME AND VERSION (パッケージ名とバージョン) | |
SEMVER VULNERABLE RANGE (セマンティックバージョニング脆弱性範囲) | |
修正・状態管理 | COMPUTED FIXABILITY (修正可能性の計算結果) |
INTRODUCED (導入時期) | |
INTRODUCTION CATEGORY (導入カテゴリ) | |
ISSUE STATUS (問題状態) | |
FIXED IN AVAILABLE (利用可能な修正) | |
FIXED IN VERSION (修正バージョン) | |
LAST IGNORED (最終無視設定日時) | |
LAST INTRODUCED (最終導入日時) | |
LAST RESOLVED (最終解決日時) | |
Jira連携 | HAS JIRA ISSUE(S) ASSIGNED (Jira課題割り当て有無) |
LATEST JIRA ISSUE (最新Jira課題) | |
JIRA ISSUES LIST (Jira課題リスト) | |
アセット情報 | ASSET NAME (アセット名) |
ASSET ID (アセットID) | |
PARENT ASSET NAME (アセット名) | |
PARENT ASSET ID (アセットID) | |
ASSET CLASS (アセットクラス) | |
ASSET TYPE (アセットタイプ) | |
ASSET TAGS (アセットタグ) | |
ASSET APPLICATION (アセットアプリケーション) | |
ASSET OWNER (アセット所有者) | |
ASSET CATEGORY (アセットカテゴリ) | |
ASSET CATALOG NAME (アセットカタログ名) | |
ASSET FINDING ID (アセット発見ID) | |
ASSET LIFECYCLE (アセットライフサイクル) | |
REPOSITORY FRESHNESS (リポジトリ) |
また、Issue Statusの状態(Open、Resolved、Ignored)やプロダクトごとの絞り込みも可能です。
フィルター機能も充実しています。(以下は一部です)
レポートをカスタマイズしたら、CSVファイルでのダウンロードも可能です。
まとめ
今回ご紹介した内容は、あくまでも基本的な使い方の一例です。
実際の運用では、組織の規模やセキュリティ要件に応じて、さらに詳細なカスタマイズが必要になるかもしれません。
Snykのレポート機能を使いこなすことで、より効率的で効果的なセキュリティ管理を実現していきましょう。
Snykに関するブログも沢山展開されていますので、是非こちらもご覧ください。
この記事がどなたかのお役に立てば幸いです。
以上、きだぱんでした。