これで分かる「DevSecOps」の課題と解決【第4回】
知らないと損する「RASP」とは? 「Webアプリの脆弱性対策=WAF」はもう古い
Webアプリケーションの脆弱性対策として、広く利用されている「WAF」。実はWAFは、幾つかの問題を抱えている。それらの課題を解消した新たな手段である「RASP」の特徴とは。
「DevOps」(開発と運用の融合)にセキュリティを取り入れた「DevSecOps」をWebアプリケーション開発で実現するには、どうすればよいのでしょうか。そのためには、Webアプリケーションの開発段階から本番運用までの全ての過程でセキュリティ対策を実施することが必要です。
Webアプリケーションの開発およびテストの段階では、脆弱(ぜいじゃく)性検出を効率化する「IAST」(インタラクティブアプリケーションセキュリティテスト)や「SCA」(ソフトウェア構成分析)といったツールが活用できます。Webアプリケーションの本番運用段階では、どのようなツールがDevSecOpsの実現に役立つのでしょうか。本稿は、その代表例である「RASP」(ランタイムアプリケーションセルフプロテクション)について解説します。
Webアプリケーションの脆弱性対策「WAF」が抱える“あの問題”
「WAF」(Webアプリケーションファイアウォール)は、Webアプリケーションを稼働させているサーバ(ホスト)と、インターネットなど外部のネットワークの間で動作する境界型セキュリティツールです。WAFは、大きく分けて3つの種類があります(図)。いずれのタイプも、シグネチャのパターンマッチングにより攻撃(マルウェアの実行やデータ流出など)をブロックするかどうかを判断する仕組みをベースにしています。
- ホスト内に配置する「ホスト型」
- ホストが属する内部ネットワークに設置する「アプライアンス型」
- クラウドサービスとして利用する「クラウド型」
WAFをWebアプリケーションの脆弱性対策として利用する上で、特に問題になるのは以下の点です。
WAFの問題1.パターンマッチングの限界
一般的なWAFは、攻撃ごとの通信手法や行動パターンをまとめた「シグネチャ」を使い、パターンマッチングによって攻撃を検出します。パターンマッチングは既知の攻撃の検出には有効ですが、シグネチャに合致しない攻撃を見つけることが困難です。そのためデータの内部構造を悪用するといった比較的複雑な攻撃の場合、見逃してしまう可能性があります。WAFでの検出が難しい攻撃の例は、以下の通りです。
- 「CSRF」(クロスサイトリクエストフォージェリ)悪用攻撃
- CSRFは、攻撃者がCookieなどのセッション情報を悪用し、まるで正規のユーザーが意図したもののように不正なリクエストをWebサイトに送り、処理させることができる脆弱性。
- Webサイトが不正なリクエストを正規リクエストとして処理するため、パターンマッチングでは検出が難しい。
- Deserialization of Untrusted Data悪用攻撃
- 「Deserialization of Untrusted Data」は、単一形式のデータに変換したデータを元の形式に戻す「Deserialize」(デシリアライズ)を、変換先のデータの安全性を確認せずに実施できる脆弱性。
- デシリアライズはWebサイトのソースコードやライブラリによって処理方法が異なる場合があり、WAFの一般的なシグネチャではデシリアライズ処理の内容を完全に把握することは困難。
- Padding Oracle Attack(パディングオラクル攻撃)
- 不正な暗号化時に発生するエラーを悪用してデータが暗号文として適切かどうかを調べ、暗号化されたデータを読み取る攻撃手法。
- 暗号化のエラー情報を利用して暗号文の正当性を推測するため、WAFが正規の暗号化処理と攻撃を区別するのが難しい。
- WAFが全ての暗号化アルゴリズムを理解して対策することが困難な点も問題。
WAFの問題2.シグネチャの継続的な追加
基本的にWAFは、該当するシグネチャがない攻撃は検出できません。そのため新しい脆弱性に対処し続けるには、WAFのシグネチャを継続的に更新する必要があります。新しいCVE(共通脆弱性識別子)が出れば、それに対応したシグネチャが必要になるのです。OSS(オープンソースソフトウェア)の新しいCVEは、毎年約1万5000件報告されています。そのたびに新しいシグネチャを用意し、追加し続けなければなりません。
こうした問題による影響を緩和するためには、セキュリティエンジニアがWAFを定期的にチューニングしたり、シグネチャを定期的に更新したりする必要があります。これはセキュリティエンジニアの業務負荷を増大させ、コストの増加を招きます。WAFの大規模な全社展開に二の足を踏む企業が少なくない背景には、こうした事情があるのです。
「RASP」とは? WAFとは何が違う?
併せて読みたいお薦め記事
連載:これで分かる「DevSecOps」の課題と解決
- 第1回:「SAST」「DAST」「SCA」がDevSecOpsに向かない“なるほどの理由”
- 第2回:脆弱性検出ツール「IAST」が「DevSecOps」に欠かせないのはなぜか?
- 第3回:Webアプリの“危険なOSSライブラリ”を見抜く「SCA」とは?
DevSecOpsについて知る
Webアプリケーションの外部から攻撃を検出するWAFに対して、RASPは内部から攻撃を検出します。Webアプリケーションに組み込んだエージェントソフトウェアを使ってデータの流れを確認し、そこから得られたコンテキスト(複数の兆候)を基にして発生した攻撃を検出し、食い止める仕組みです。RASPは、Webアプリケーションの内部関数や、外部ライブラリのAPI(アプリケーションプログラミングインタフェース)の呼び出し内容を追跡し、関数やAPIの呼び出し時点で攻撃を特定可能です。こうした仕組みにより、RASPは比較的複雑な攻撃でも検出しやすいという特徴があります。
脆弱性の種類を識別するための共通基準であるCWE(共通脆弱性タイプ一覧)単位で攻撃を検出、ブロックすることも、RASPの特徴です。この仕組みによって、RASPが認識していない脆弱性を悪用した攻撃が発生しても、その攻撃が悪用する脆弱性のいずれかが既存のCWEと合致すれば、検出、ブロックできます。CWEの例には、正規のSQLクエリに悪意ある操作を挿入し、標的のサーバで実行させる「SQLインジェクション」があります。
RASPはWebアプリケーション自体と、Webアプリケーションが利用するOSSライブラリの、双方の脆弱性に対処できます。Webアプリケーションのソースコードに脆弱性が存在する場合、その脆弱性への一時的な対処にRASPが役立ちます。OSSライブラリの脆弱性が新たに見つかり、そのOSSライブラリをアップグレードするまでの一時的な対処としてもRASPを利用できます。
繰り返しになりますが、Webアプリケーションが扱うデータの流れを追跡し、解析することで脆弱性を検出するのが、RASPの特徴です。世界的に被害を広げている、Javaのログ出力ライブラリ「Apache Log4j」の脆弱性は、脆弱性を突いて最終的に悪意のあるプログラムを実行させる「コマンドインジェクション攻撃」に悪用されています。RASPは追跡、解析したデータに基づいて「悪意のあるプログラムの実行につながっている」と判断しますので、そうしたコマンドインジェクション攻撃もゼロデイ(ベンダーが脆弱性情報を公開していない状態)で検出してブロックできている実績があります。
企業が継続的に成長するためには、デジタルトランスフォーメーション(DX)の推進が不可欠です。DXを推進する上で、Webアプリケーションの開発と運用の効率化だけでなく、セキュリティ対処も効率化するDevSecOpsが重要になっています。
本連載をお読みいただいた方は、DevSecOpsの実現を支援する手段として、IAST、SCA、RASPが有効なツールであることをご理解いただけたのではないでしょうか。これらのツール群を適切に活用することで、開発プロセスのより早い段階でセキュリティ対策を実施する「シフトレフト」や安全な本番運用環境の実現など、セキュリティ対策の自動化、プロジェクト全体の効率化を図りやすくなると考えています。
著者紹介
田中一成(たなか・かずなり) Contrast Security Japan
国内システムインテグレーターや外資系企業で営業を経験した後、ArcSight(現Micro Focus)、41st Parameter(現Experian)など、主に米国スタートアップのカントリーマネジャーとして6社の日本オフィスを立ち上げ、成長させた。IT業界で約30年以上の経験があり、ハードウェア、ソフトウェア、クラウド、セキュリティ、データベース、デジタルマーケティングなどさまざまな分野に精通している。現在、安全なWebアプリケーション環境を構築して運用管理するContrast Securityのランタイムセキュリティ製品の拡販およびサポートに尽力している。
Copyright © ITmedia, Inc. All Rights Reserved.
この記事の著者
関連記事
新着ホワイトペーパー PR
-
技術文書・技術解説
[アトラシアン株式会社] IT運用や従業員サポートは生成AIでどう変わる? 使い方や導入の流れは? -
製品資料
[株式会社みらい翻訳] 音声翻訳活用の課題を解決、“本当に使える”ツールの特徴とは? -
製品レビュー
[Wrike Japan 株式会社] 400店舗を支えるWalmart Canada、散在する情報やアナログな管理をどう変えた? -
事例
[Wrike Japan 株式会社] 年間100件超のDXプロジェクトを統合管理、JERAはどのように実現した? -
事例
[Wrike Japan 株式会社] グローバルなクリエイティブ業務を合理化、エスティーローダーに学ぶ実践のコツ
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
「Copilot」はなぜ放置される? “議事録要約止まり”を脱する処方箋
-
2
9割が頓挫する「AI内製化」 差がついたのはツールより設計力
-
3
JSONをやめてPythonで送る トークン消費を約7割抑えるAIの設計
-
4
見落としが多発、AI普及&データ急増に伴うネットワーク課題の意外な原因とは?
-
5
技術力だけでは「上に行けない」 シヤチハタCDOが語る、情シスが次の役割をつかむ条件
-
6
脱VMwareの前提が崩れる BroadcomのVDDK公開停止で確認すべき点
-
7
「Microsoft 365」が乗っ取られる 跡形もなくMFAを破る手口
-
8
AI全部入り「Microsoft 365 E7」に企業が二の足を踏む訳 移行意向はわずか4%
-
9
OpenAIが叫ぶ法規制の裏で 情シスが今すぐ固めるべきAI防衛策
-
10
IBM iのブラックボックス化を打破 資産継承と進化を実現する「IBM Bob」の実力
ホワイトペーパーランキング PR
-
1
5回聞くだけじゃ足りない? トヨタ式「なぜなぜ分析」の正しい実践方法
-
2
生成AIで文書活用を進めるには? 効率化と安全性をどう両立する
-
3
AIエージェントで多様な日常業務を効率化するための入門ガイド
-
4
JR西日本ITソリューションズが「監視業務の属人化」を解消した方法とは?
-
5
インシデント対応工数を約3割削減、東京ガスの事例に学ぶ監視体制刷新のコツ
-
6
国税庁の次世代基幹システム「KSK2」稼働開始に向けて、対応すべき変更点とは?
-
7
5分で分かる「セキュア大容量ファイル転送サービス」の機能とメリット
-
8
「スクラム」と「カンバン」の違いとは? アジャイル型開発手法を徹底比較
-
9
ドラマで分かる、標的型攻撃メールの被害を受ける企業と回避できる企業の分岐点
-
10
「脱Excel」か「Excel快適化」か? 現場にやさしい業務改善の進め方
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー