※ 本記事は、Doug Clarke, Jonathan Schreiberによる”Security scanning for Maven now available in OCI DevOps“を翻訳したものです。

2022年5月19日


Oracle Cloud Infrastructure(OCI)DevOpsサービスのビルド・パイプラインと新しいApplication Dependency Managementサービスとの併用で、パッケージ脆弱性に対するセキュリティ・スキャンの一般販売開始を発表できることを楽しみにしています。Application Dependency Managementは、エキスパートによってキュレートされた脆弱性データベース、およびMaven Central依存関係との関係を維持します。

今日、あらゆる種類の本番ソフトウェアに取り組んでいる開発者は、既知の脆弱性への攻撃にオープンしているコードをリリースしないよう、セキュリティとコンプライアンスのベスト・プラクティスをセットしています。昨年は、Log4Shell exploitに対して脆弱なソフトウェアにパッチを投下したことを覚えています。このスキャンおよびパッチ適用サイクルでは、ソフトウェア配信ワークフローに手動ステップを追加でき、開発者がDevOpsサービス・パイプラインのコンプライアンスの自動化を簡単に開始できることを楽しみにしています。

新しい脆弱性監査機能を使用すると、継続的インテグレーション(CI)パイプラインの一部として、共通の脆弱性とエクスポージャ(CVE)をスキャンできます。現在、pom.xmlファイルに基づくMaven依存性がサポートされています。開発者は、DevOpsサービス・ビルド手順内のMavenプロジェクトの脆弱性監査ステップを追加できるようになりました。開発者は最小限のCVSSスコアを設定してビルドに失敗し、パッケージ内のそのしきい値を超えたCVEがパイプラインで検出された場合、ビルドの実行に失敗し、開発者が脆弱性に関するアラートを受けてパッチを適用するようにできます。統合された脆弱性監査は、開発者が既知の脆弱性を本番環境に保存するのに役立ちます。

A graphic depicting the workflow for a deployment with the bubble for the vulnerability audit highlighted in yellow.

脆弱性監査ビルド・ステップ

新しい脆弱性監査ステップは、次に示すように既存のDevOpsサービス・ビルド手順に追加できます。

...
- type: VulnerabilityAudit
  name: "Vulnerability Audit Step"
  configuration:
    buildType: maven
    pomFilePath: ${OCI_PRIMARY_SOURCE_DIR}/pom.xml
  packagesToIgnore:
    - org.apache.struts
    maxPermissibleCvssV2Score: 6.0
    maxPermissibleCvssV3Score: 8.1
  knowledgeBaseId: ocid1...
  vulnerabilityAuditCompartmentId: ocid1...
  vulnerabilityAuditName: sample_va
...

この単純な構成では、開発者は、パスまたは失敗するスキャンの構成を制御できます。ステップ構成では、開発者は特定のアーティファクトまたはバージョン・パスを無視し、プロジェクト内で許可される最大許容CVSSスコア(脆弱性に割り当てられた総合スコア)を制御できます。たとえば、特定の中程度または低重大度CVEの許容範囲、またはstrutsなどの特定のパッケージ名を指定できます。

次に、開発者は、ビルド手順の出力およびビルド実行の詳細に脆弱性監査の結果を表示できます。

A screenshot of the Oracle Cloud Console showing a build pipeline run with the vulnerability audit step.

脆弱性監査

検出された脆弱性のためにDevOpsビルド・パイプラインが失敗した場合、開発者は脆弱性監査結果を表示して、関連するCVEとともに依存関係の完全なツリーを表示できます。開発者は、CVEスコアを調べて問題を理解し、脆弱性を含まないバージョンへの依存関係の一部にパッチを適用するなど、必要な変更を加えることができます。

A screenshot of the Vulnerability Audit Details page showing the application dependencies.

今すぐ始めましょう

Mavenビルドのセキュリティ脆弱性スキャンは、Oracle Cloud Infrastructure DevOps CIパイプライン・サービスの新機能の一部です。OCI DevOpsを使用してCIビルドを作成するには、無料アカウントにサインアップして脆弱性監査ドキュメントに従います。