連載
» 2018年10月04日 05時00分 公開

セキュリティ・アディッショナルタイム(27):DevOpsの邪魔にならないセキュリティをどう実現するか――CI/CDに統合可能な「IAST」とは

デジタルトランスフォーメーションの加速と同時に、セキュリティ品質に対するユーザーの目の厳しさが増す中、DevOpsのプロセスにいかにセキュリティを取り組むかは大きな課題だ。このような中、「IAST(Interactive Application Security Testing)」というカテゴリーのツールに注目が集まっている。

[高橋睦美,@IT]

 開発者と運用者だけではなくセキュリティ担当者も一体となり、コードを頻繁にリリースしてフィードバックループを回し、セキュリティ面も含めた品質を高めていくアプローチが「DevSecOps」だ。デジタルトランスフォーメーションの加速と同時に、セキュリティ品質に対するユーザーの目の厳しさが増す中、徐々にこのやり方に注目し、取り入れる企業が増えている。Synopsysは米国で開催されたBlack Hatの展示会場において、このアプローチに適した新しいタイプのセキュリティ検査ツールの例として「Seeker」を紹介した。

Synopsysのソリューションマネジメント担当ディレクターのOfer Maor氏 Synopsysのソリューションマネジメント担当ディレクターのOfer Maor氏

 Synopsysは以前から、複数のセキュリティ検査ツールを提供してきた。ソースコードそのものを解析するSAST(Static Application Security Testing:静的セキュリティ診断ツール)の「Coverty」、コードに含まれているオープンソースソフトウェアやサードパーティー製コンポーネントの脆弱(ぜいじゃく)性を解析するSoftware Composition Analysis(ソフトウェアコンポジション分析)製品の「Black Duck」などだ。

 これらに対してSeekerは、IAST(Interactive Application Security Testing:対話型アプリケーションセキュリティテスト)という位置付けだ。実際にアプリケーションを動作させて脆弱性を確認するDAST(Dynamic Application Security Testing:動的セキュリティ診断ツール)の課題を解決するものだという。

 Synopsysのソリューションマネジメント担当ディレクターのOfer Maor氏は、「IASTはDASTとSASTのハイブリッドと表現できるが、それだけではなく、より迅速な開発ライフサイクルを可能にするものだ」と述べた。

DevOpsのスピードを妨げないセキュリティをIASTで

 なぜ今、IASTというカテゴリーが注目を集めているのだろうか。それは、日々加速するDevOpsによる迅速な開発ライフサイクルのスピードに対し、「週単位で時間を要するこれまでのセキュリティ検査プロセスは遅過ぎたからだ」とMaor氏は述べた。

 これに対しIASTは、DevOpsを妨げず、CI/CDワークフローのバックグラウンドで自動化されたセキュリティ検査を行うため、開発者が本来やりたいことに専念しつつ、コードのセキュリティを高めるという。

 「DASTは、スキャナーを走らせて挙動を見るブラックボックステストであり、コードそのものは見ない。このため、テスト結果の中に誤検知が含まれることもあり、開発者にとっては使いにくいものだった」(Maor氏)。しかも往々にして、開発プロセスが一区切り付いた機能テストや結合テストの段階で実施されるため、脆弱性が見つかるとどうしても手戻りが発生し、迅速な開発ライフサイクルを実現するDevOpsにとっては相性が悪かった。

 これに対しIASTは、エージェントを利用し、開発段階でリアルタイムにコード解析を行うことで、DevOpsとセキュリティの間にあるスピードのギャップを埋めるものだ。

 「多くの組織では、従来型のモノリシックな開発プロセスから、ITを開発プロセスの一部に取り込んで迅速な開発、デプロイを実現するDevOpsへの移行を進めている。そして、セキュリティもITの一部だ。セキュリティもこのプロセスに統合することにより、よりセキュアなアプリを開発できるだろう」(Maor氏)

 エージェントを用い、リアルタイムにランタイム分析を行う意味では、IASTは、パフォーマンス解析ツールや「Runtime Application Self-Protection」(RASP)と呼ばれる新しいセキュリティ製品群と共通するテクノロジーを活用しているが、目的は異なる。パフォーマンス解析ツールはボトルネックの特定を、RSAPはアプリケーションに対する攻撃の検出を念頭に置いているのに対し、IASTはあくまでコード内に含まれる脆弱性を特定し、開発サイクルの中でフィードバックするためのツールだ。

 もちろん「アーキテクチャレベルでのセキュリティ検討には専門家の知見が必要で、完全に自動化するのは難しい」(Maor氏)のも事実だが、少なくともそれ以降の開発プロセスを加速できることが大きなメリットだ。

IASTは、セキュリティ向上だけでなくより良いワークフローを開発者に提供できる

 こうした背景から徐々にIASTツールが市場に登場し始めており、Black Hatの展示会場でも散見された。その中でSeekerは、「正確で開発者がアクション可能な情報を提供する」ことが特徴だとした。その上、SeekerはCI/CDツールに統合できるため、新しいソフトウェア開発ライフサイクルに適した形でセキュリティ検査を実施できることがポイントだという。

Black Hatの展示会場で紹介されたSeekerのデモ。対象となるアプリケーションにどのような脆弱性が存在するかを、深刻度別にレポートし、開発者にフィードバックする Black Hatの展示会場で紹介されたSeekerのデモ。対象となるアプリケーションにどのような脆弱性が存在するかを、深刻度別にレポートし、開発者にフィードバックする

 これまでのプロセスでは、セキュリティ担当者がDASTでテストした結果出てきた脆弱性を並べ「修正してください」と開発者に伝えるだけだった。「そのために待たされ、開発者が実現したいことができないのでは本末転倒だ。IASTは、セキュリティ向上だけでなくより良いワークフローを開発者に提供できる」(Maor氏)

 実際に米国では、コンテナを活用してマイクロサービス化に取り組むと同時にSeekerを導入し、約2000個に上るエージェントを開発のバックグラウンドで走らせ、自動化されたテストを行っている顧客もあるという。

 日本市場での本格的な展開はこれからになるが、「迅速な開発の価値を理解し、それを推進したいと考える企業は増えている。それが自社のビジネスを拡大させると知っているからだ。そうした企業ならば、IASTは業種を問わず適している」(Maor氏)とした。

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。