これで分かる「DevSecOps」の課題と解決【第3回】
Webアプリの“危険なOSSライブラリ”を見抜く「SCA」とは?
安全なWebアプリケーション開発を推進する「DevSecOps」の実践には、「SCA」(ソフトウェア構成分析)が欠かせない。その理由とは。そもそもSCAとは何なのか。
近年、「DevOps」(開発と運用の融合)や「アジャイル」など開発効率を向上させる開発手法が台頭しました。DevOpsにセキュリティを取り入れた「DevSecOps」も登場しています。それに伴って、Webアプリケーション開発におけるオープンソースソフトウェア(OSS)ライブラリの利用が広がっています。ただしOSSライブラリには、さまざまな脆弱(ぜいじゃく)性が存在することも事実です。
私が国内法人の代表を務めるContrast Securityは2021年に、ユーザー企業がWebアプリケーションに利用中のOSSライブラリに関する調査を実施しました。その結果をまとめたレポートが「2021 State of Open-Source Security」です。それによると、Contrast Securityのセキュリティサービスの保護下にあるWebアプリケーションの、およそ90%がOSSライブラリを利用していました。
Palo Alto Networksの調査チームUnit 42は、非営利団体MITREが脆弱性に割り当てる共通脆弱性識別子(CVE:Common Vulnerabilities and Exposures)を分析しました。この分析においてUnit 42は、2020年8月時点で採番(公開、割り当て)済みのCVEを、採番年ごとにカウントしました(図1)。CVEの採番数は増加傾向にあり、2017年から2019年には年間1万4000件以上に上っています。アプリケーションセキュリティベンダーWhite Source(Mend.ioの名称で事業展開)の調査によると、脆弱性の増加傾向はOSSにも現れており、2020年には9658件の脆弱性がOSSで見つかっています。
Webアプリケーションにおいて利用するOSSライブラリの種類が増えると、それだけ脆弱性を抱える可能性が高まりやすくなります。OSSライブラリの積極的な利用が、企業にとって大きな脅威になり得るのです。
DevOpsやアジャイルといった手法に基づくWebアプリケーション開発を安全に進めるには、ソースコードだけではなくOSSライブラリについても、存在する脆弱性の検出や対処を効率化しなければなりません。そこで視野に入るのが「SCA」(ソフトウェア構成分析)の活用です。
そもそも「SCA」とは何か?
併せて読みたいお薦め記事
連載:これで分かる「DevSecOps」の課題と解決
DevSecOpsについて知る
SCAは、Webアプリケーションが利用しているOSSライブラリをスキャンによってリストアップし、脆弱性を調査するツールです。見つかった脆弱性のCVEを特定し、脆弱性の深刻度に基づいて対策の優先順位を付けます。従来、開発部門はその分析結果を調査し、必要な対策を施すという流れでSCAを活用してきました。
Webアプリケーションが脆弱なOSSライブラリを「組み込んでいるかどうか」を判断するのに、SCAは役立ちます。ただし「実際に利用しているかどうか」を調べるのは、極めて困難です。OSSライブラリが提供する関数やクラス(データと処理をまとめたもの)の呼び出しを含め、Webアプリケーションのソースコードにおける処理の流れを目視で追わなければいけないからです。結果として開発部門は、スケジュールに間に合わせるために、脆弱性を十分に検証できないままWebアプリケーションをリリースせざるを得なくなる可能性があります。
依存関係が生む脆弱性検出の落とし穴
SCAはOSSライブラリから複数のクラスを検出します。ただしWebアプリケーションがそれらのクラス全てを利用していることは、ほとんどありません。
例えば図3の状況を考えてみましょう。ソースコードによると、WebアプリケーションはライブラリAとライブラリBを呼び出しています。ライブラリAはライブラリCを呼び出し、さらにライブラリCはライブラリFを呼び出す仕組みです。このように、あるライブラリが別のライブラリを必要とする関係を「依存関係」と呼びます。
ライブラリBにも他のライブラリとの依存関係があり、一部の機能にライブラリDやライブラリEを必要とします。ただし、このWebアプリケーションはライブラリBの全ての機能を使っているのではなく、ライブラリDやライブラリEを呼び出す必要のない機能だけを使っています。つまりライブラリDやライブラリEの脆弱性は、このWebアプリケーションに影響を及ぼさないことになります。
脆弱性修正を効率化する鍵は「優先順位付け」
2021 State of Open-Source Securityは、依存関係を含めて1つのWebアプリケーションにひも付くOSSライブラリのうち、Webアプリケーションが実際に呼び出すOSSライブラリの割合を調査した結果をまとめています。その結果によると、調査対象となったWebアプリケーションにひも付くOSSライブラリ(平均118件)のうち、Webアプリケーションが実際に呼び出すOSSライブラリは半数程度でした。つまり実際には半数程度のOSSライブラリを呼び出していないことになります。呼び出さないOSSライブラリの脆弱性対処に時間を掛けても無駄足になることは、想像に難くありません。
Webアプリケーションが実際に呼び出しているOSSライブラリのみをリストアップし、そのOSSライブラリを優先的にバージョンアップして脆弱性を排除できれば、脆弱性対処を効率化できます。最新のSCAは、エージェントソフトウェアを利用し、Webアプリケーションのソースコードを解析してOSSライブラリを確認する機能を備え始めています。この機能により、SCAは実際に呼び出しているOSSライブラリのみをリストアップし、そのライブラリを優先的にアップデートすることが可能になります。2021年に脆弱性が見つかったことで、広範囲に影響を及ぼしたライブラリ(プログラム部品群)「Apache Log4j」も検出可能です。脆弱性検出ツール「IAST」(インタラクティブアプリケーションセキュリティテスト)も、同様の機能を備えています(IASTの詳細は連載第2回「脆弱性検出ツール『IAST』が『DevSecOps』に欠かせないのはなぜか?」を参照)。
第4回は、開発部門による本番環境の管理を実現する「RASP」(ランタイムアプリケーションセルフプロテクション)を紹介します。
著者紹介
田中一成(たなか・かずなり) Contrast Security Japan
国内システムインテグレーターや外資系企業で営業を経験した後、ArcSight(現Micro Focus)、41st Parameter(現Experian)、SundaySkyなど、主に米国スタートアップのカントリーマネジャーとして6社の日本オフィスを立ち上げ、成長させた。IT業界で約30年の経験があり、ハードウェア、ソフトウェア、クラウド、セキュリティ、データベース、デジタルマーケティングなどさまざまな分野に精通している。Contrast Security日本オフィスの立ち上げに尽力。
Copyright © ITmedia, Inc. All Rights Reserved.
これで分かる「DevSecOps」の課題と解決
アプリケーション開発の新しい手法として、開発から運用までの一連のプロセスにセキュリティを取り入れた「DevSecOps」が注目を集めている。DevSecOpsを実施する際の課題と解決策を解説する。
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社MatrixFlow] 「物流リソース最適化」ガイド:人員・配車・傭車を出庫依頼の確定前に決めきる -
製品資料
[株式会社キーエンス] なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは -
製品資料
[株式会社セールスフォース・ジャパン] 「CRMは設計と無関係」は本当か? PLMとの融合で実現する高速開発 -
事例
[日本ヒューレット・パッカード合同会社] AIエージェントの時代にどう備える? 「新たな働き手」を支える3要素とは -
製品資料
[日本ヒューレット・パッカード合同会社] “横並びの自動化”から脱却、AI活用で生産性と競争力を高める秘訣
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
2
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
3
なぜ「Gemini 4 Argon」は出遅れたのか? Googleが狙う“逆転のシナリオ”
-
4
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
5
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
6
情シスの約8割が転職や退職を意識 調査で分かった“辞めたくなる最大の理由”
-
7
「結局使わなくなる」Microsoft 365 Copilotを半年で定着 キリンの3施策
-
8
「Wi-Fi 7」経由でWindowsが乗っ取られる? 最高権限奪取の恐怖
-
9
「中堅・中小企業のネットワーク・セキュリティ運用実態」に関するアンケート
-
10
情報漏えいはなぜ繰り返されるのか 今すぐ見直すべき「境界」
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
4
財務部門がAIを最大限に活用する方法 無駄のない戦略的リーダーシップへの道
-
5
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
6
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
7
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
8
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
9
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
10
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー