Java/Maven環境におけるビルド情報の追跡とSBOMレポート出力
前田氏は、これまでに紹介した一連の流れについて、実際の製品画面を用いたデモ動画で解説した。
GitHub上のJavaソースコードを、Maven(ビルドツール)を用いてGitHub Actionsからビルドし、Artifactoryにアップロードする工程を披露した。アップロード後は、メタデータを活用してバイナリファイルを追跡できる様子を示している。
GitHub ActionsやJFrogのCLIの設定完了後、CLIからMavenコマンドを実行してビルドし、メタデータとして「Build Info」を付与した。
実行結果はGitHub Actionsの画面から確認できる。バイナリファイルがJFrogリポジトリのどのパスに格納されたかが一覧表示され、Build Infoのデータともリンクしている。
Build Infoにより、どのCIパイプラインでビルドされたのかを追跡できるほか、パッケージ情報や含まれるサードパーティー製OSSの詳細まで確認できる。万が一、OSの環境変数やパスワード、トークンなどの機密情報が混入していても、この段階で検出が可能だ。
また、Xrayが脆弱性のスキャナーとしてどのように動作しているのか、実際の画面で解説した。
バイナリがアップロードされると、自動的にスキャンが走り結果を表示。詳細画面に飛ぶと、CVSSのスコアやセベリティ(重大度)のほか、脆弱性が検知されたOSSの名前などが表示された。このように、バイナリの中に入っている脆弱性を一覧で見ることができる。
デモでは先述のコンテキスト分析も行われており、検出された脆弱性が現実に影響を及ぼすかどうかの判定も表示された。「applicable」と表示されているものは攻撃を受ける恐れがあることを示しており、詳細を開くとその理由や具体的な修正方法にアクセスできる。
さらに、バイナリファイルに含まれるオープンソースの一覧をエクスポートすることで、SBOMの標準的なレポート形式として出力できることも紹介された。
バイナリファーストな開発基盤への移行戦略
冒頭で触れた「ソースコード中心のDevOps」が既に運用されていれば、「JFrog製品の導入は意外と簡単だ」と前田氏は述べる。
ソースコードをVCSで管理し、CI/CDでビルド&テスト、デプロイ&リリースという従来のプロセスの、「CI」と「CD」の間にJFrogの製品を組み込むだけで、すぐに導入できるという。

「CIのパイプラインでテスト・ビルドした成果物を、まずはArtifactoryにアップロードしてほしい。それだけでXrayが自動的に脆弱性を検出する。その後のCD工程では、Artifactoryに保存されたバイナリファイルをダウンロードしてデプロイする、という流れが基本的である」(前田氏)
もしCI/CDプロセスが未整備な場合でも、「スクリプト等である程度のバッチ処理を組むことで、スムーズにJFrogと連携できる」と推奨した。
さらにJFrogはSAST機能も提供しており、開発の早期段階で脆弱性を発見する「シフトレフト」にも寄与する。バイナリファイル中心のDevOpsへの移行を支援し、セキュリティ強化と運用効率化を同時に実現するJFrogのソリューションに、今後も注目したい。
JFrog Japan 株式会社からのお知らせ
JFrogプラットフォームの製品ツアーおよび無料トライアルをご用意しています。
ソフトウェアサプライチェーンの可視化・セキュリティ・自動化をぜひご体感ください。

