コードの安全性・安定性を高める開発サイクル ~テスト管理の効率を上げ、脆弱性診断を自動で行う~

第2回DevOpsからDevSecOpsへの近道(後編)

DevSecOpsへの近道

前編で解説したとおり、完成されたソフトウェアの約80%がオープンソースコンポーネントを利用していることから、この部分をターゲットとしたソフトウェアコンポジション解析からスタートしていきます。

ソフトウェアコンポジション解析には、ツールの導入が必須となります。ソフトウェアコンポジション解析ツールとしては、Black Duck/Sonatype/Synopsys/WhiteSourceなどが有名です。この記事では、⁠The Forrester Wave: Software Composition Analysis, Q2 2019」でもトップリーダーに選出されたWhiteSource(ホワイトソース⁠⁠」を紹介します。

WhiteSourceとは

WhiteSourceはオープンソースコンポーネントを検知し、脆弱性診断を行う対象を選択、開発チームのルールやポリシーに基づいて脆弱性をチェックします。もちろん部品表(BoM)を生成、依存関係や関連性も見える化します。

おもな特長

WhiteSourceのおもな特長は次のようになります。

  1. 誤検出ゼロ
  2. わかりやすいアラート通知
  3. 全体を俯瞰して脅威を見える化するダッシュボード
  4. 200以上のプログラム言語をサポート
  5. 検出された脆弱性の修正方法を提案してくれる
  6. Atlassian製品との統合により、DevOpsからDevSecOpsへ

1.誤検出ゼロ

WhiteSourceは、オープンソースコンポーネントのソースコード解析やリポジトリ照合、独自の脆弱性データベースなどを活用して誤検出ゼロを実現します。前述のDevSecOpsを実現する5つの要件の1つである「脆弱性の検出精度が高いこと」を見事にクリアします。

誤検出が多い場合は、開発エンジニアは誤検出であることを証明するために無駄な時間を費やし、ソフトウェア開発のスピードが遅くなります。

2.わかりやすいアラート通知

単なる警告通知(アラート)では意味がありません。WhiteSourceは4つの警告通知でお知らせします。

  • セキュリティアラート
  • 品質アラート
  • ポリシーアラート
  • バージョンアラート

ビルド前に、WhiteSourceによる脆弱性スキャンを実行するだけで、わかりやすい警告通知が送信され、それに対処すればよいので簡単です。

3.全体を俯瞰して脅威を見える化するダッシュボード

検出したライブラリ一覧、脆弱性のアラート一覧、オープンソースのライセンス分析など、WhiteSourceのダッシュボード機能によって、開発するソフトウェアへの脅威を視覚的に見える化します図1⁠。

図1 WhiteSourceのダッシュボード機能
図1 WhiteSourceのダッシュボード機能

4.200以上のプログラム言語をサポート

WhiteSourceは、代表的なJava、PHP、JavaScript、Python、Rubyなどを含む200以上のプログラム言語に対応しています。この幅広いプログラム言語対応が、WhiteSourceが選ばれる理由の1つとなっています。

5.検出された脆弱性の修正方法を提案してくれる

DevSecOpsの実現には、セキュリティスペシャリストが必要と言われています。それは間違いではありませんが、ツールが対処方法を提案してくれるのであれば、セキュリティスペシャリストの負担軽減につながります。WhiteSourceには、検知された既知の脆弱性に対して、対処方法が明確になっているものを教えてくれる機能があります。

6.Atlassian製品との統合により、DevOpsからDevSecOpsへ

WhiteSourceは、非常に多くのツールと連携できるという点で優れています表1⁠。DevSecOpsを目指すのであれば、アジャイル・スクラム開発ツールとして世界中で知られるAtlassian製品と統合して利用するのがお勧めです。Dev領域を担う「Jira Software⁠⁠、Ops領域を担う「Jira Service Desk」を活用して、すでに多くのチームはDevOpsを実現しています。そこにSec領域を担う「WhiteSource」を統合させることで、DevOpsからDevSecOpsへ簡単に移行することができます。

表1 WhiteSourceと連携可能な代表的なツール
リポジトリGitHub
GitLab
Amazon ECR
Google Container Registry
Azure Container Registry
JFrog
Docker
継続的
インテグレーション
Microsoft Azure DevOps Server(TFS)
Jenkins
Bamboo
TeamCity
Microsoft Azure DevOps Services
CircleCI
Travis CI
テストツールMicro Focus Fortify SSC
Aqua
Checkmarx
アプリケーション
ライフサイクル管理
(ALM)
Microsoft Team Foundation Server(TFS)/
Visual Studio Team Services(VSTS)
Jira
ビルドツールApache maven
Bundler
Gradle
SBT
Apache Ant
Bower
setuptools(Python)
NAnt
Google Cloud Build
AWS CodeBuild

次回は、Atlassian製品とWhiteSourceを統合させ、具体的にどんなことができるのか紹介したいと思います。

米国Atlassianから、2年連続で
「Top new business APAC」を受賞。
Atlassianセールスパートナーとして
アジアパシフィックで1位の証
米国Atlassianから、2年連続で「Top new business APAC」を受賞。Atlassianセールスパートナーとしてアジアパシフィックで1位の証

日本だけでなく、アジア圏でもアトラシアン製品販売のトップエキスパートであるリックソフトのWebサイトでは、各アトラシアン製品の体験版を提供しているほか、アトラシアン製品専用のコミュニティも運営しています。まずはアクセスしてみては!

Software Design

本誌最新号をチェック!
Software Design 2022年9月号

2022年8月18日発売
B5判/192ページ
定価1,342円
(本体1,220円+税10%)

  • 第1特集
    MySQL アプリ開発者の必修5科目
    不意なトラブルに困らないためのRDB基礎知識
  • 第2特集
    「知りたい」「使いたい」「発信したい」をかなえる
    OSSソースコードリーディングのススメ
  • 特別企画
    企業のシステムを支えるOSとエコシステムの全貌
    [特別企画]Red Hat Enterprise Linux 9最新ガイド
  • 短期連載
    今さら聞けないSSH
    [前編]リモートログインとコマンドの実行
  • 短期連載
    MySQLで学ぶ文字コード
    [最終回]文字コードのハマりどころTips集
  • 短期連載
    新生「Ansible」徹底解説
    [4]Playbookの実行環境(基礎編)

おすすめ記事

記事・ニュース一覧