DevSecOpsツールのおすすめは?
主なツールを分かりやすく解説
2023年4月14日
ご相談・無料お見積りDevSecOpsは、DevOpsの概念にセキュリティを組み込んだシステム開発の手法です。継続的なセキュリティチェックを行いながら生産性とリリーススピードを維持する必要があり、DevSecOpsの実現には自動化ツールの組み込みが不可欠です。
この記事では、DevSecOpsのおすすめのセキュリティツールを一覧で紹介し、それぞれの特徴を分かりやすく解説します。
DevSecOpsとは
DevSecOpsとは、計画から開発、運用までのサイクルを迅速かつ継続的に行うDevOpsの開発手法に、セキュリティ要件(Sec)を組み込もうという考え方のことです。
近年、システム開発はスピードが求められるケースが多くなり、計画から開発、運用までのサイクルを迅速かつ継続的に行うDevOpsの概念が浸透してきました。
しかし、アジャイル開発の手法を用いたDevOpsは、セキュリティの概念が組み込まれていないケースが多く、リリース直前に重大な脆弱性が発覚した場合、その修正対応に時間がかかることで継続的なリリースが妨げられてしまう点が問題視されています。
また、ユーザーが安心して利用できるサービスを提供し、競争力を高めるには、ただ単にリリーススピードを早めるだけでは不十分です。
このような背景から生まれたのが「DevSecOps」です。
これまで後回しになることが多かったセキュリティチェックや脆弱性診断を早い段階から組み込んで行うことで、手戻り工数を削減できるため、生産性やスピードを落とすことなく安全性の高いソフトウェアのリリースが実現できるのです。
DevSecOpsが注目される背景、メリットについては、以下の記事でも詳しく解説しています。
DevSecOpsツール一覧
DevSecOpsを実現するには、それぞれの開発ライフサイクルに自動化ツールを組み込み、セキュリティの検知・管理を「当たり前にやっている状態」にすることが重要です。
DevSecOpsツールには、主に以下の4つの種類があります。
DevSecOps導入時には、開発対象のシステムの要件や特徴を踏まえたうえで、複数種類のツールを利用すると、コストを抑えて有効なセキュリティチェックを実現できるでしょう。
ここからは、DevSecOpsの主なツールを紹介します。
GitLab Ultimate
GitLabは、Gitリポジトリをホスティングするソフトウェアです。
DevOpsのライフサイクルに必要な機能が、1つのツールにすべて搭載されています。
また、Ultimateプランではセキュリティ分野の機能が利用できるようになり、DevSecOpsの実現をサポートしています。
GitLab Ultimateは、設計から開発、テストまで、「SAST」「DAST」「SCA」のツールが提供されており、スキャンをCI/CDパイプラインに組み込むことが可能です。
また、「コンテナスキャン」「セキュリティダッシュボード」など、DevSecOps実現に必要な機能がそろっているのも特徴です。
GitLabに関する情報についてはこちらを参照・お問い合わせください。
https://aslead.nri.co.jp/products/gitlab/SonarQube
SonarQubeも、ソースコード解析によってバグや脆弱性を検知する「SAST」カテゴリのツールです。
オープンソースプラットフォームとして人気が高く、Java、Java Script、Go、Python、C、HTML など数多くの開発言語に対応し、プラグインも豊富です。
SonarQubeの特徴は、バグや不具合を検知するのはもちろん、重複コードや脆弱性のあるコード、バグを誘発する可能性があるコードなどもサポートしている点にあります。
ソースコードのどの部分に問題があるのかも分かりやすく表示され、脆弱性に関する対処法も表示されるため、修正作業を行う開発者の負担を大きく軽減してくれるでしょう。
Gemnasium
Gemnasiumは、オープンソースの依存関係に関連するセキュリティリスクを管理するツールです。
2018年1⽉にGitLab社に買収され、現在はDependency Scanning(依存関係のスキャン)というGitLab Ultimateの機能としてアップデートされています。
Dependency Scanningでは、オープンソースやサードパーティに対する依存関係を評価し、脆弱性診断を実施することができます。
また、アプリケーションの開発及びテスト中に、依存関係のセキュリティ脆弱性を自動で検知することが可能です。
GemnasiumやGitLab Ultimateに関する詳細は、DevSecOpsソリューションを提供する株式会社野村総合研究所(NRI)にお問い合わせください。
Vex
Vexは、優れた脆弱性検出率を誇る「DAST」カテゴリのツールです。
日本の株式会社ユービーセキュアが提供しており、純国産のWebアプリケーション脆弱性検査ツールとして国内シェアNo.1を誇ります。
マルチバイト⽂字列の取り扱いに起因する脆弱性や、フレームワーク固有の脆弱性など、国産ツールならではの独⾃検査シグネチャもあります。
また、仕様が異なるさまざまなWebアプリケーションに対応し、検査の方法をカスタマイズできる柔軟性の高さも魅力です。
Vexは、出力された結果に対する対処法が分かりやすく表示されるため、修正作業を行う開発者の負担を軽減できるというメリットがあります。
さらに、Handlerを利用して任意の前後処理(準備処理・後処理)や追加検査(拡張処理)を設定することも可能なため、機能をまたいだ脆弱性の検出など、一般的なツールでは難しい複雑なテストも実現できます。
Contrast ASSESS
Contrast ASSESSは、アプリケーションのテスト中にバックグラウンドで解析を行う「IAST」カテゴリのツールです。
開発元はアメリカのContrast Security社で、ソフトウェアに脆弱性検出機能を実装し、セキュリティホールを⾃動的に特定する⾰新的なアプリケーションセキュリティ・テストツールとなっています。
アプリケーションのビルド時にエージェントを仕込んでおき、人手や別ツールで打鍵されたときに、アプリケーションの処理内容から脆弱性を検知するのが特徴です。
自動化されたほかのテストと組み合わせることで継続的な脆弱性診断を行うことができ、検出した脆弱性はSlack、JIRA等のツールを使ってタイムリーに通知できるため、スピーディーな修正や対処ができるようになります。
Contrast ASSESSに関する詳細は、DevSecOpsソリューションを提供するNRIにお問い合わせください。
License Finder
License Finderは、フレームワークやライブラリの依存関係を含めて、無許可パッケージなどのライセンス違反を検出するツールです。
パッケージマネージャと連携することで依存関係とライセンス状況を把握し、許可されたライセンスのリストと比較しながら違反を検出します。
License Finderも、Gemnasium同様に、現在はLicense ComplianceというGitLabの機能として取り込まれています。
また、License ComplianceについてもGitLab15.9までで終了となるため、GitLab16.0以降は「License scanning of CycloneDX files」に移行することになります。
License scanning of CycloneDX files は、500種類以上のライセンスを解析して識別できるだけではなく、デュアルライセンスや複数の異なるライセンスが適用されるパッケージからライセンス情報を抽出することも可能です。
License FinderやLicense Compliance、License scanning of CycloneDX filesに関する詳細は、DevSecOpsソリューションを提供するNRIにお問い合わせください。
DevSecOpsツールの導入に関するお問い合わせ
株式会社野村総合研究所(NRI)では、各ツールの導入時に発生する疑問や問題を解決し、DevSecOpsを実現するサポートを行っています。
DevSecOpsツールの導入を検討する際は、ぜひNRIにお気軽にお問い合わせください。