2015年6月30日火曜日

IoT×ビッグデータの基盤とセキュリティの仕組み

http://www.itmedia.co.jp/enterprise/articles/1506/30/news003.html

ビッグデータとIoTの融合を担うけん引役は、デバイスや分析アプリだけではない。これを支えるクラウドや基盤の役割や階層型セキュリティ対策について解説する。

IoT×ビッグデータの鍵を握る階層型セキュリティ

 前回の記事ではIoTとビッグデータの相互運用性の鍵を握る階層型のアプローチを取り上げた。今回は引き続き、米国立標準研究所(NIST)のビッグデータ・リファレンス・アーキテクチャと、クラウドセキュリティアライアンス(CSA)のIoTセキュリティガイドラインを参照しながら、ビッグデータとIoTの融合を支える「階層型セキュリティ」での基盤の役割や変化について考察してみたい。
 図1は、NISTのビッグデータ・リファレンス・アーキテクチャの全体イメージだ。典型的なユースケースが、クラウド環境上に構築された仮想的な分散処理フレームワークのHadoopである。この図の中で、「データプロバイダー」として新規参入や拡大が見込まれるのがIoTだ。
csa24-1.jpg図1:NISTビッグデータ・リファレンス・アーキテクチャ、出典:NIST Big Data interoperability Framework Version 1.0 Working Drafts(2015年4月)
 例えば、パブリッククラウド上で稼働するHadoopクラスタのセキュリティをリアルタイムでモニタリングしたい場合、ユーザーは、以下のような4つの階層のセキュリティ対策に留意する必要がある。
留意項目具体例NISTフレームワークでの役割/ロール
1.パブリッククラウドのセキュリティクラウドのエコシステムを構成するサーバ、ストレージ、ネットワークのセキュリティビッグデータフレームワークプロバイダー
2.Hadoopクラスタのセキュリティノードのセキュリティ、ノードの相互接続、ノードの保存データのセキュリティビッグデータフレームワークプロバイダー
3.モニタリングアプリケーションのセキュリティモニタリングする相互関係のルール、セキュアコーディングビッグデータアプリケーションプロバイダー
4.データの入力ソースのセキュリティソース(デバイス、センサーなど)からのデータ収集のセキュア化、アクセスログ/メタデータの生成/管理、アクセス権限のルールデータプロバイダー

基盤としての役割が大きいHadoopのセキュリティ

 第1の「パブリッククラウドのセキュリティ」では、まずクラウドユーザーがサービスプロバイダー(例えばIaaSを提供するビッグデータフレームワークプロバイダー)のセキュリティ/コンプライアンス管理体制を事前に評価する。さらに、リアルタイムなセキュリティ監視/分析を行うために利用可能なリソースを確認して、SLAの内容の検討を踏まえて、契約することが必須条件だ。SLAの水準は、リアルタイムなセキュリティ監視/分析での制約要因となる。
 CSAでは、ユーザー/監査人/プロバイダーに向けてクラウドサービスに必要なコントロール(管理策・統制)とその実装方針を示した「CSA Cloud Controls Matrix」(CCM)、クラウドユーザーや監査人がサービスプロバイダーへの質問で想定される項目を示した「CSA Consensus Assessments Initiative Questionnaire」(CAIQ)を提供している。CCM/CAIQの具体的な内容は、実際にサービスプロバイダーが公開しているドキュメント類を見ると分かりやすい(例えば、「AWS コンプライアンス」「Microsoft Azure トラスト センター」など)

第2のパブリッククラウド上で展開される「Hadoopクラスタのセキュリティ」は、分散プログラミングフレームワーク自体にセキュアであることが求められる。例えば、Hadoop/MapReduceでは、図2に示す通り、入力ファイルから分割された複数のチャンク(かたまり)から、Mapperがデータを読み込んで一定の計算処理を行い、鍵/値のペアのリストを出力した上で、Reducerが個々の鍵に附属する値を結びつけて、結果を出力する仕組みになっている。
csa24-2.jpg図2:Hadoop/MapReduceの仕組み。出典:CSA Big Data Working Group「Big Data Analytics for Security Intelligence」(2013年9月)
 特にビッグデータの観点から問題になるのは、Mapperへのセキュリティ脅威だ。以下のようなケースが想定される。
ケース脅威
Workerノードの誤作動による計算処理分散処理でMapperに割り当てられたWorkerノードが、不正確な構成や障害ノードによって誤作動を起こす可能性がある。また、Workerが修正されて、ユーザーの機密データが漏えいする可能性がある。
インフラストラクチャ攻撃危険にさらされたWorkerノードは、他のWorkerと再生を目的とするMasterや中間者、MapReduceの処理に対するDoS攻撃との間の通信を傍受する可能性がある。
偽のデータノード偽のデータノードがクラスタに追加された後、複製されたデータを受信したり、変更されたMapReduceコードを配布したりする可能性がある。
 このようなリスクへ対応するには、並列分散処理のプロセス全体におけるMapperの信頼性を保証したり、強制アクセス制御(MAC:Mandatory access control)を利用してセキュリティポリシーに基づく認証されたファイルへのアクセスを保証したりする必要がある。それ同時に、Mapper出力からの情報漏えいによるプライバシー/個人情報保護の違反を防止するためには、データを匿名化する技術の機能強化も求められる。
 ただし、MACやデータ匿名化技術の負荷によって計算処理のパフォーマンスが変動すると、現場のユーザーに影響が及んで混乱を招く可能性がある。運用管理には細心の注意が求められる。

第3の「モニタリングアプリケーションのセキュリティ」では、Hadoop自体にセキュリティモニタリング/分析ツールが組み込まれていないため、各ベンダー/プロバイダーが提供するツールを追加導入するか、Hadoopの要求をモニタリングする機能を持ったフロントエンドシステムを導入することになる。
 前回の記事で触れたように、プライバシー・バイ・デザイン、セキュアなアプリケーション開発といったエンジニアリング手法がどのレベルにまで組み込まれているのかによって、アプリケーションセキュリティが左右される。
 Hadoopは、元々バッチ処理をベースとして開発された技術であり、リアルタイム性への対応をカバーするために、NISTが開発した「セキュリティ設定共通化手順」(SCAP:Security Content Automation Protocol)」の他、リアルタイム分散処理システムの「Apache Storm」、メッセージングシステムの「Apache Kafka」など、様々なソリューションが登場している。
 それら加えて、新しく開発された「Hadoop 2.0」のフレームワークでは、図3に示す通り、MapReduceの分散データ処理とHadoop分散ファイルシステム(HDFS)のレイヤ間に、リソース管理を担う「YARN」(Yet-Another-Resource-Negotiator)や、YARN上の実行エンジン「Apache TEZ」が追加された。今後はリアルタイムなセキュリティ監視/分析ツールに、YARNやTEZの新機能をどう反映させていくかも課題である。
csaHadoop 2.0におけるYARNとTEZの位置付け。出典:CSA Big Data Working Group「Big Data Taxonomy」(2014年9月)
 アプリケーションセキュリティは、本来ビッグデータアプリケーションプロバイダーの領域だが、Hadoopフレームワークのレイヤ構成が変わる中、ビッグデータフレームワークプロバイダー側のソリューション参入が期待される。

ビッグデータ基盤の有効活用がIoTセキュリティの鍵に

 データプロバイダーに求められるIoTによるリスク対応策は、ここまでに挙げたクラウドコンピューティングやHadoopクラスタにおけるセキュリティ課題をクリアして、初めて検討できるようになる。とりわけ課題となるのが、ネットワークにつながる無数のウェアラブルデバイスやセンサーからデータを収集する段階での入力の検証だ。具体的には、以下のようなケースが想定される。
ケース脅威
デバイスやデータ収集アプリケーションの改ざん相手方は、データを収集するデバイスを改ざんしたり、悪意のある入力を中央データ収集システムに提供するために、デバイス上で稼働するデータ収集アプリケーションを改ざんしたりするなどの可能性がある。
なりすましIDによるクローニング攻撃相手方は、なりすましのIDを複数生成し、悪意のある入力を提供することによって、データ収集システムに対してクローニング攻撃(結託攻撃など)を実行する可能性がある。
データの入力ソースの操作例えば、温度センサーで検知した場所の温度を変更して悪意のある入力を行うなど、相手方が検知データの入力ソースを操作することができる場合がある。
入力ソースから転送中のデータへの攻撃例えば、中間者攻撃や反射攻撃など、相手方は悪意のない入力ソースから中央収集システムへ転送中のデータを危険にさらすことが可能である。
 これらの脅威への対策としては、相手方が悪意のある入力を生成して中央の収集システムに転送することを未然に防止するソリューションと、相手方が悪意のあるデータを入力した場合に、収集システム側でそれを検知するソリューションが考えられる。
 前者の場合、改ざん防止ソフトウェアの開発が進んできたものの、PCベースが主体で、技術仕様の異なるIoTデバイスを網羅したソフトウェアの開発には、費用対効果の観点からも容易でない。また、後者の場合は膨大な数のIoTデバイスから転送される大容量データを迅速に収集するビッグデータシステム環境で、きめ細かい検知やフィルタリングを可能にする高度なアルゴリズムの開発が必要となる。
 当面の間は、Hadoopに代表される大規模分散処理システムを支えるビッグデータセキュリティ向けの技術や運用管理の仕組みを、IoTに適用できる共通基盤としてサービス化し、利用する。その一方、半構造化データ、アクセスログ/メタデータなど、IoTのビッグデータならではの特性を考慮したセキュリティインテリジェンス技術の開発・ソリューション化を推進することが柱になるだろう。特にIoTの要素技術とビッグデータの分析技術を融合させたセキュリティソリューションに対する期待は高く、スタートアップの有望領域となる。

 次回は、欧州で進むEUデータ保護規則案がビッグデータやIoTに及ぼすインパクトを取り上げる。

0 件のコメント: