saas/クラウドコンピューティングでのオープンソース活用とセキュリティ

51
SaaS/クラウドコンピューティングでの オープンソース活用 オープンソース活用セキュリティ セキュリティ @札幌市SaaSビジネス研究会 2009/11/12 産業技術総合研究所 情報セキュリティ研究センター 須崎有康 Kuniyasu Suzaki

Upload: kuniyasu-suzaki

Post on 24-May-2015

2.340 views

Category:

Technology


0 download

DESCRIPTION

札幌市SaaSビジネス研究会 2009/11/12 http://www.sapporo-it-pro.jp/AttachedFile.aspx?id=66&c=0

TRANSCRIPT

Page 1: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

SaaS/クラウドコンピューティングでの

オープンソース活用オープンソース活用とセキュリティセキュリティ

@札幌市SaaSビジネス研究会2009/11/12

産業技術総合研究所情報セキュリティ研究センター

須崎有康Kuniyasu Suzaki

Page 2: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Who am I?

• 独立行政法人 産業技術総合研究所情報セキュリティ研究センター(秋葉原サイト)主任研究員

• 1CD Linux であるKNOPPIX日本語版を2002年よ

り保守管理• 最近はInternetから起動できるOSや仮想計算機を

使ったセキュリティ強化の研究開発に従事。クラウドコンピューティングがモバイル環境にも適用できる技術を目指している。

Page 3: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Cloud Computingとは

• フリー百科事典『ウィキペディ(Wikipedia)』

– クラウドコンピューティング(英:cloud computing)とは、

ネットワーク、特にインターネットをベースとしたコンピュータの利用形態である。ユーザーはコンピュータ処理をネットワーク経由で、サービスとして利用する。

Page 4: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

本日の話題

• クラウドコンピューティングとは?

• SaaS/クラウドコンピューティングで必要なもの

– オープンソース

• ハードウェアのコストは激減。如何にソフトウェアのサービスを低価格で構築するか。

– セキュリティ• ユーザがSaaS/クラウドコンピューティング利用するため

の確認項目

• まとめ

Page 5: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Cloud Computingのサーバクライアント

は単純ではない• 80->90年、メインフレームからクラスタ・サーバへ

• クラウドでは– 1対1ではない (ここがcloudy?)

• Who? どのマシンが何台で処理しているのか

– 自律的にスケーラブルな分散処理技術

» 物理的なマシンを単純拡張可能し、ソフトウェアで制御

» 例:Google File System, MapReduce, BigTable• Where? どこで処理しているか

– ネットワーク遅延を隠すため、地理的にサーバを分散/多重化

– クライアントとリモート処理のシームレス化

» こちら側も単純ではない。

• When?いつ更新するのか– Queryの応答は即座だが、データの更新はシステムの状況による。

» ミッションクリティカルな処理には向かない?

Page 6: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

クラウドコンピューティングの流れ

• クラウドコンピューティングへ– 分散化 distributed computing (規模拡大、横展開)– 仮想化 virtual computing (サーバ集約)– 自動化 autonomics computing– 無人化 unattended computing (労働集約)

• 集約(consolidate)が進む

– サーバ全体としてはデータ多重化し障害に強くするが、各ノードで同一データ利用の無駄は排除(重複除外)する。

• ハードディスクイメージ: Content Address Storage• メモリイメージLinux KSM, Xen Difference Engine, Xen Satori

Page 7: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

規模の世界

• 米サン・マイクロシステムズのCTO(最高技術責任者)グレッグ・パパドポラス氏– 「世界は5台のコンピュータだけしか必要としていない。1つはグーグル。

もう1つはヤフー。それにアマゾン、マイクロソフトのlive.com、セールスフォース、イーベイあたりを加えれば、もうほかに地球上にコンピュータなど不要になるだろう。」

• USAの2009年デスクトップ・サーバの出荷予想は 290万台– 年間サーバ出荷台数に占めるGoogle比率は11%– Googleのダレスのデータセンターのサーバは64万台。

– Googleのデータセンターは全米中に5か所存在

Page 8: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

規模のコスト比率

7.1>1000 Servers / Administrator

≒ 140 Servers / Administrator

Administration

5.7$0.40 per GByte / month

$2.20 per GByte / month

Storage

7.1$13 per Mbit/sec/month

$95 per Mbit/sec/month

Network

RatioCost in very large datacenter (≒50,000)

Cost in medium-sized datacenter (≒ 1000 servers)

Technology

• ソフトウェアはオープンソース– ライセンス料なし

Berkeley RAD Labのレポートより

Page 9: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

PaaS IaaSSaaS

クラウドコンピューティングの分類

XaaS (X as a Service)I : InfrastructureP : PlatformS : Software

アプリケーション(会計ソフトなど)

OS

仮想マシン・ハードウェア

プログラミングAPI

OS

仮想マシン・ハードウェア

アプリはユーザが記述

仮想マシン・ハードウェア

OS/ミドルウェアを

ユーザが選択

ユーザに提供するインターフェース

Page 10: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Cloud Computing Player

SaaS

PaaS

IaaS

JTBトリポリ

JP 郵便

SupplierUser

Service on Cloud

Page 11: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Cloud Computing Player

SaaS

PaaS

IaaS

JTBトリポリ

JP 郵便

SupplierUser

Service on Cloud相互が強くなることでWinWin

Interoperabilityによる圧力

Page 12: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

オープンソース

• OS: Linux• 仮想化: Xen, KVM• ストレージ:Hadoop

– HDFS (Hadoop Distributed File System)

• Eucalyptus– Amazon EC2と互換なオープンソースソフトウェア。

ElapsticFoxから利用可能。

Page 13: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

OSS Cloud構成例

Hardware (X86/X86_64)

Virtual Machine Monitor (Xen, KVM)

Cloud Manager(Eucalyptus)

Primary OS(Linux)

MiddlewareApache, MySQL

ZabbixOpenLDAPOpenSSO

hardware

OS(Linux)

GuestOS(Linux)

Service

GuestOS(Windows)

Service

VMは動的に変更

ユーザからは見えない

VMはダイナミックに変更

ユーザからは見えない

ハードは多量にある障害時には動的に変更

Page 14: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Eucalyptus• カリフォルニア大学サンタバーバラ校(UCSB)が中心となって開発したプロジェ

クト• Eucalyptus Systemsというベンチャー企業を創出• Amazon EC2/S3互換

– プライベート型社内クラウドの配備とテストを行うことができる。

Cloud Controller

Cluster Controller

Node ControllerXen あるいはKVMの仮想マシン(VM)を利用同一OSを起動するとVMのメモリで共通部分が多い。

EucalyptusはCloud Computing環境構築を可能にするが負荷分散や対障害対策は不十分であり、Xabbixなどで対処する必要あり。

Page 15: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

VMメモリの共有(deduplication重複除外)• 同一のメモリ内容をVM間で共有することでホスト

OSの実メモリ使用量を減らす。

– XenのDifferential Engine, Satori– KVMはLinux SKM (Kernel Samepage Merging)

セキュリティは?

Referred from “Difference Engine: Harnessing Memory Redundancy in Virtual Machines[OSDI08]”

Page 16: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Hadoop• Doug Cutting氏(元Yahoo! Inc.,現 Cloudera)によって進められているApache

のTopProject• Hadoopの構成要素

– HDFS(Hadoop Distributed File System)• 大量のデータを大量のマシンで安全に保存するための分散ファイルシステム

• 同じファイルを異なるマシンに重複して持たせることで、一部のマシンが故障してもファイルが失われない(冗長化)。

– Hadoop MapReduce Framework• 大規模なデータを大量のマシンで並列に処理するための分散計算フレームワーク

Map

Map

Map

Reduce

Reduce

Reduce

データの分解抽出 データの集約計算

台規模データ処理

Page 17: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

さて、クライアントはstupidでよいのか?

Page 18: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

クライアントはstupidでよいのか?• クライアントの計算能力は必要

– 応答性を要する処理はクライアント側

– 例えばGoogle Street View, Google EarthはかなりCPU性能を要求する。

Page 19: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

クライアントは何もする必要がないのか?

• PCはRich Clientになる (Intel)– http://download.intel.com/it/pdf/Better_Together_RichClientsPCs_and_CloudComputing.pdf

• Cloud Computingを提供する会社でクライアント強化

– OS: Google Android, ChromeOS

Page 20: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Moka5のLivePCクライアントホスティング

• OSイメージを配信– クライアント側ではインストールせずに仮想マシン(VMWare)で実行。

OSイメージはUSBで持ち運び可能。

• クライアント・サーバのシームレス化

Page 21: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Internet仮想ディスク(我々のアプローチ)

• 膨大なクライアントPC台数

• Gartner世界パソコン市場出荷台数

– 廉価PCの出現で更に加速

– ハードディスクにはほぼ同一のOSイメージがコピーされている。• 同一コンテンツが1GBとして、271PBのコピー。

• OSが異なっても共有分がある。また、updateでは前回のイメージとの共通部分が多い。– CAS(Content Addressable Storage)を使って総容量を減らす。

271,180239,211台数(*1,000)

2007年2006年

Page 22: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

CASとは• ブロック内容による間接アドレッシングを行うストレージ管

理技術• 基本的アイデアはPlan9のVenti [FAST’02]と同じ

• ハッシュ値によるブロック管理

– 同一コンテンツのブロックは同一ハッシュ値で管理(重複除外

deduplication)される。0クリアされたブロックの総容量を削減できる。

• ハッシュの衝突困難性を利用し、ブロックは追加のみ。古いイメージにも戻ることができ、永続アーカイブとして利用可能。

File System

Address SHA-10000000-0003FFF 4ad36ffe8…0004000-0007FFF 974daf34a…0008000-000BFFF 2d34ff3e1…000C000-000FFFF 974daf34a…… …

CAS Storage Archive

Indexing

専用Protocol

重複

read 8000新しいSHA-1で追加

Indexの書換え

Page 23: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Internet仮想ディスク(仮想ディスクからの起動とサーバの管理)

Virtual Machine

KVM

Real Machine

QEMU

Internet

OS Suppliers

(update timely)

Users

Try OS without installation

Virtual Disk

old disksold disks

ディスクのバージョン管理技術を開発する(仮想ディスク LBCAS)

Page 24: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Block Device

256KB

4KB Page

ext2

Mapping Table and block files

map01.idx4ad36ffe8…974daf34a…2d34ff3e1…3310012a……

HTTP Server (original) Client A

VM

On DemandDownload

ブロックファイル作成とネットワーク透過仮想ディスク

Page 25: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Internet仮想ディスクからのOS起動

• ハードディスクをキャッシュとして使う

• 必要なディスクイメージはサーバからオンデマンドで取得

• CAS: Contents Addressable Storage の技術でキャッシュを管理– SHA-1による改ざん防止

• 実計算機・仮想計算機でOS起動

Page 26: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

運用 http://openlab.jp/oscircular

• Xen, KVMで起動可能なUbuntuイメージ提供– 毎週アップデート

• 他のCPU対応– HTTP-FUSE PS3 Linux

• PlayStation3(Cell) 対応のLinux (Ubuntu, Debian GNU/Linux)をHTTP-FUSE を使ってInternet起動できる。

• PlayStation3のブートローダkboot を活用して、カーネルをHTTP経由で取得・起動するため、HDインストールやCDが一切不要。

Page 27: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Application Streamingに適用(今後の展開)

• 新しいソフトウェア流通方式– クライアントもオープンソース

• 仮想ディスクを割り当てるのみ。– アプリケーションはインストールなし。常に最新。

• 脆弱性のあるアプリケーションはサーバで更新対応。

• 手元のクライアントは必要最低限。– 手元のソフトウェアを少なくすることで脆弱性の問題を抑

制する。

• 課金– サービス提供、脆弱性管理

Page 28: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

セキュリティは?

Page 29: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Cloud Computingのセキュリティ

• SaaSの普及に伴ってセキュリティガイドラインが出来ているところ。– 経済産業省 SaaS 向けSLA ガイドライン平成20年1月21日

• http://www.meti.go.jp/press/20080121004/03_guide_line_set.pdf

– 総務省 ASP・SaaS における情報セキュリティ対策ガイドライン平成20年 1月30日• http://www.soumu.go.jp/menu_news/s-news/2008/pdf/080130_3_bt3.pdf

– アイデンティティ管理技術の標準化調査研究成果報告書 平成21年 3月 情報技術標準化研究センター

• http://www.jsa.or.jp/stdz/instac/syoukai/H19_houkoku/h19annual-report/02_02.pdf

• IaaSでは更に多くの課題がある。– 対障害、セキュリティ、プライバーなどに分類の難しい問題も多い。

– セキュリティはもっと弱いところを攻撃されるのですべて項目を網羅する必要あるが、Cloud Computingでは項目が多い。

Page 30: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

セキュリティの課題

• 各種のレポートおよび公募課題から抽出– Berkeley RAD Labのレポート

• “Above the Clouds: A Berkeley View of Cloud Computing”

– Cloud Security Alliance (CSA)

– 経済産業省「クラウドコンピューティングセキュリティ技術研究開発」公募

– Cloud Computing Incident Database

• この他、NISTレポートやGartnerレポートなどあり。

提供側

利用側

Page 31: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Berkeley RAD Labのレポート“Above the Clouds: A Berkeley View of Cloud Computing”

http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.pdf

• Top 10 Obstacles to and Opportunities for Growth of Cloud Computing.1. Availability of Service

複数のクラウドプロバイダを使い障害対策(サービス時間、ネットワーク経路)すること。DDOS攻撃に対処すること。

2. Data Lock-In APIの標準化をすること。ベンダの囲い込みを避け、移行を可能にすること。

3. Data Confidentiality and Auditability秘匿性と監査能力を確保すること。

4. Data Transfer Bottlenecks データ送信量を考慮すること。FedExでの物理ディスク配送は安い。

5. Performance UnpredictabilityVMを介したホスティングは応答性、安定性に問題あり。

6. Scalable Storage ストレージの各種技術を組みわせて使うこと。

7. Bugs in Large Distributed Systems 分散した仮想マシンのためのデバッグ手法を開発すること。

8. Scaling Quickly Auto-Scalerを開発すること。

9. Reputation Fate Sharing Trusted email のようなreputation-guarding services を提供すること。

10. Software Licensing Pay-for-use ライセンスを浸透させること。

Page 32: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Cloud Security Alliance (CSA)

• 設立:2008年12月

– 18社、Novell, Macafee, TrendMicroなど

– 残念ながらクラウド主要プレーヤーが入っていない。

• Security Guidance for Critical Areas of Focus in Cloud Computing を2009.4に公開

– http://www.cloudsecurityalliance.org/csaguide.pdf

• 15のセキュリティ課題

Page 33: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

CSA の15課題クラウドのアーキテクチャ領域

1. クラウドコンピューティングのアーキテクチャ

クラウドの統制・管理2. 統制とリクス(プロバイダのリスク管理体制)3. 法務・契約(利用者の法環境の差、契約上の留意事項)4. 電子的証拠開示5. コンプライアンスと監査6. 情報のライフサイクル管理7. 移植性と相互運用性

クラウドの運用8. 通常のセキュリティ、ビジネスコミュニティと災害復旧9. データーセンターオペレーション10. インシデントレスポンス、通知、回復11. アプリケーションセキュリティ12. 暗号と鍵管理13. アイデンティとアクセス管理14. ストレージ(相互隔離、廃棄管理)15. 仮想化(相互隔離)

Page 34: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

経済産業省 新世代情報セキュリティ研究開発事業

(クラウドコンピューティングセキュリティ技術研究開発)

• http://www.meti.go.jp/information/downloadfiles/c90710b01j.pdf

【制度的課題】• コンプライアンス(個人情報保護法・不正競争防止法等の国内法制度との関連、機器の所

在地・運営主体等が国をまたいでいる場合の問題)• 内部統制対応(IT アウトソーシングとして統制対象に含まれる)• 標準化すべき事項(データ形式、アクセスAPI)• クラウド事業者の寡占化の可能性と弊害【技術的課題】• 仮想化技術(仮想インスタンスから物理プラットフォームへの干渉を検出・停止)• ユーザ認証(CSP:Cryptographic Service Providerの利用、登録、抹消、委譲、不正検出)

• モニタリング(ユーザによるモニタリングを可能とする)• ウェブアプリケーション(認証・認可連携システムとの連携)• マルウェア対策(ユーザに影響を与えずにボット、ワームの検知・駆除)【運用的課題】• 事業継続性(ユーザサイドと事業者サイドにおけるデータ移行の方法)• 暗号鍵管理(誰が管理するか、Key Recovery)

• ぜい弱性対応(稼働中のシステムに悪影響を与えずに行う)• インシデント対応(デジタルフォレンジック、ディスカバリ)• 既存システムからクラウド環境への安全な移行計画• クラウド環境中の特権が一人に集中しない運用管理モデル

Page 35: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

Cloud Computing Incident Database

• http://wiki.cloudcommunity.org– このHPは既にない

14133サービス停止・遅延

3データ消失

3セキュリティ

通知低中高深刻

インシデントの種類と深刻度

中間者攻撃セッションハイジャックなりすまし

大容量顧客データ消失Google 1時間Amazon 8時間

パフォーマンス低下EC2: 長いFWのルール

認証サーバ過負荷

Page 36: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

サーバ側が提供するセキュリティとプライバシー要件• 顧客のOS・アプリケーションのセキュリティ管理

脆弱性対応、ログ管理、フォレンジックス対応• 仮想マシン間のIsolation保障

仮想マシンのsharing 技術から漏洩防止

• ホスティングのための暗号化技術機密を保ったまま暗号化データを処理する技術

• 海外ホスティング問題各国の法律対応。利用できる特許、輸出規制などIPアドレスの海外ホスティング問題 (IPアドレスで国が判別できない)

顧客OSを仮想マシンで

ホスティング。(Amazon EC2)

IaaS

完全性、機密性、サーバ認証、個人認証クライアント機器認証DDoS攻撃対策

アプリケーション実行用のAPIを提供

(Force.comプラットフォーム、Google App Engine)

PaaS

完全性、機密性、サーバ認証、個人認証クライアント機器認証DDoS攻撃対策

アプリケーション提供。Application Streaming

も含む。(J-SaaS, Salesforce

CRM)

SaaSセキュリティ要件内容サービス

セキュリティ要件

Page 37: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

課題

• 個々の項目ごとに課題を取り上げる– 可用性

– インターオペラビリティ

– データ保護

– 暗号

– インシデント発見・解析

– 機器認証

– 法制度対応

– 認証制度

Page 38: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

可用性

• 主なクラウドインフラは可用性をSLA (Service Level Agreement)として提示– 多くの海外パブリッククラウドによる可用性は99.9%– つまり1年のうち、8.76時間停止してもよい?

• インターネット: 93.2-99.6%(Dahlin‘03) • 通常の電話: 99.99%• 911 (米国の119番): 99.994% (18000回に1不良)• 通常の電話: 99.99% (年間停止約53分)• Airlines (‘02): 1 in 161,000 accidents; 99.9993%

• 日本のユーザ企業が要求する情報システムの可用性が適合するか?

• 局所的な災害に対してはクラウドの方が有利

• 可用性によりクラウドと既存システムを使い分け

Page 39: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

インターオペラビリティ

• ユーザがクラウドコンピューティングのベンダーを移行できるか。– IaaSでは可能

• Amazon EC2互換のサービスがある。(Eucalyptus)

– PaaSではロックイン問題あり

• PaaSのインターフェースはAPIなので各インフラ毎に

書きなおす必要あり。

– SaaSではデータの移行

• アプリケーションのデータ形式に依存

Page 40: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

データ保護

• ユーザに意識されず、データはサーバで共有される。

– 同一マシンで処理されるばかりでなく、ハードディスイメージやメモリイメージをVM間で共有することで効率を上げるよう

になっている。

• 情報漏洩

– サーバが集約されるに従って情報が漏洩する恐れが増える。• CSS’09 EC2での仮想マシン間での情報漏洩の報告。

• 分離(Isolation)が重要

– 仮想マシンのセキュリティポリシーによって利害関係があるVMが同時に動くことを禁じる。

• XenのXSM (Xen Security Module)

Page 41: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

暗号• データの機密性を守るため暗号は必須

– しかし、ユーザとCloud管理者で機密が必ずしも一致しない

• ユーザのVMをCloud Computingでホスティングするが、すべて暗号化されてしまうと、管理者が検証できない– OSの各種設定、脆弱性検出

• 機密を保ったまま暗号化データを処理する技術– privacy homomorphism 準同型暗号)(別名fully

homomorphic encryption 完全準同型暗号)– IBMの研究者によって公開鍵方式で暗号化されたデータを復

号せずに機密性を維持したまま処理できる手法が開発(2009/6/25)

• http://www-03.ibm.com/press/us/en/pressrelease/27840.wss

Page 42: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

インシデント発見・解析

• VM introspection– OSへの攻撃はOS自体が信用できない

– 仮想マシンを通してOSの状態を監視する。• 仮想マシンモニタは小さく、高信頼である。

• Digital Forensic– 不正アクセスや機密情報漏洩などコンピュータに

関する犯罪や法的紛争が生じた際に、原因究明や捜査に必要な機器やデータ、電子的記録を収集・分析し、その法的な証拠性を明らかにする

– Live Forensic

Page 43: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

機器認証

• 機器認証の低下– 銀行のATM → コンビニATM → 携帯 → PC

• PC ではTCG (Trusted Computing Group)が規格策定したTPMチップがある。最近のPCではほぼ搭載されているが実質的な利用がされていない– Trusted Computing の普及が不十分

• BIOSおよびOSの対応が不十分

– 第三者認証サービス(Attestation Server)がない

• Trusted Computingでは機器認証ばかりでなく、起動時から実行されるソフトウェアのログを保持することで、その脆弱性をAttestation Serverに問い合わせ、サービス提供の有無を制御できる– Platform Trust Service

Page 44: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

PTS (Platform Trust Services)

Platform RM

Runtime RM

起動 Integrity Report

VerificationResult

ユーザ

構成検証TTP

ホワイトリスト

O/Sイメージ

の配信

ディストリビュータ完全性情報の登録

検証 PTS(server)

完全性情報データベース

脆弱性情報データベース

Privacy CA

CVE/mitre,OVAL/mitre,

NVD/NIST

公的脆弱性情報データベース

RM: Reference Manifest

TPM

Page 45: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

法制度対応

• プライバシー法の対応– EUのデータ保護指令、USの Safe Harbor

• IT運用に関する法制度– FISMA: Federal Information Security Management Act (連邦情報セ

キュリティマネジメント法) • 各連邦政府機関に対して、情報および情報システムのセキュリティを強化する

ためのプログラムを開発、文書化、実践することを義務付け

– SOX(上場企業会計改革および投資家保護法)• 企業は内部統制の内容、問題があった場合の対応などを明確化・文書化 . IT

の開発・運用プロセスが厳格に行われていることを保証しなくてはならない

– SAS70監査

• アウトソーシングサービスなどの受託業務にかかわる内部統制について評価する監査人の業務に関する基準として、米国公認会計士協会(AICPA)が定めたもの

Page 46: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

認証制度

• 既存の内部業務のアウトソーシング利用ための基準

• セキュリティ分類 機密性レベルIまたはII では、アウトソーシングする場合には委託先業者が「ISO/IEC 17799 またはISMS」(現在はISO/IEC 27001)の資格を有していること

• ISO IEC 27001– 情報セキュリティマネジメントに対する第三者適合性評価制度

• PLAN(計画)⇒DO実行)⇒CHECK(確認)⇒ACT(対策改善)というPDCAサイクルの仕組みをまわしていくことで、会社全体のセキュリティレベル・業務レベルの改善

– 2005年10月に発行(国内ではJIS Q 27001として2005年5月に発行)– 国別登録数日本はNo.1 http://www.iso27001certificates.com

Page 47: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

ISO IEC 27001

• 公開分は日本がトップ

Number of Certificates Per Country

5822Total 3Oman13Iceland

3Macau15Philippines

1Yemen3Iran16Romania

1Uruguay3Gibraltar18UAE

1Sudan3Egypt20Thailand

1New Zealand3Chile21Turkey

1Moldova4Qatar22Greece

1Mauritius4Bulgaria23Brazil

1Macedonia5Sri Lanka26Malaysia

1Luxembourg5South Africa28Mexico

1Lithuania5Croatia29Ireland

1Lebanon5Colombia29Australia

1Kyrgyzstan5Canada31Hong Kong

1Denmark6Switzerland31Austria

1Bosnia Herzegovina 6Kuwait37Spain

1Belarus6Indonesia40Poland

1Bangladesh6Bahrain57Italy

1Armenia8Slovakia65Hungary

1Argentina9Sweden82Czech Republic

2Ukraine10Slovenia95USA

2Portugal10Russian Federation102Korea

2Morocco10Norway120Germany

2Kazakhstan11Singapore205China

2Isle of Man11Pakistan331Taiwan

2Belgium12Saudi Arabia401UK

3Vietnam12Netherlands477India

3Peru12France3273Japan

Page 48: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

今後の動向 (キワモノ的なTopic)

• 規模による新たなコンピューティング

– エラー忘却型コンピューティング

– 自動修復パッチ生成

Page 49: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

エラー忘却型コンピューティング(Failure-oblivious computing)

• 厳密な実行ではなく、大規模化・複雑化に耐える方向に。– Martin Rinard (MIT)らが2004年に提唱した概念。何らかのエ

ラーが発生しても,プログラムの処理を停止せず,エラーを無視して処理を継続する。

– 現在の情報システムは,ACID,原子性(Atomicity),一貫性(Consistency),独立性(Isolation),耐久性(Durability),という特性を満たすが、エラー忘却型コンピューティングは,ACID特性を無視する。

– 楽天技術研究所の森正弥所長のコメント• 「エラー忘却型コンピューティングは,データの完全性や保全性を犠牲にしてで

も,分散処理の大規模化や高速化を実現しようとする考え方だ。このような考え方を,世界で初めて大規模に実用化した点が,Googleと他社の最大の差だろう」

• http://itpro.nikkeibp.co.jp/article/COLUMN/20081031/318297/

Page 50: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

自動修復パッチ生成• 通常の修正パッチは問題発覚後、平均28日後[Symantech Report 06]

– 台規模クラウドでは問題

• 攻撃されたソフトウェア(アプリケーション)に対して自動的に修復するパッチを作成する ClearView [SOSP09] by MIT– ソースコード不要。バイナリから自動生成。– Windows XP (SP2/SP3)への攻撃から防御できた。

• DARPAで雇用した攻撃者はパッチが自動生成できた。

– ツール(オープンソース)– Daikon:Dynamic Invariant detection toolを利用

• プログラムの実行履歴から不変情報(invariant)を自動的に検出する。不変情報のパターンマッチングを行うツールとを組み合わせる事でプログラム自動生成ができる。

• http://groups.csail.mit.edu/pag/daikon/ ソースあり

– dynamoRIO:Runtime Introspection and Optimizationをプログラム操作に利用

• http://groups.csail.mit.edu/cag/dynamorio/ ソースあり

– 生成されたパッチは複数クライアント上でtrial&Errorで評価。

Page 51: SaaS/クラウドコンピューティングでのオープンソース活用とセキュリティ

まとめ

• Cloud Computingはサーバのみならず、クラ

イアントでもオープンソースを多用

– ビジネスモデルのパラダイムシフト

• セキュリティはより複雑

– 確立した技術はまだない。逆に規模展開では敵わないのでサービスに適合したセキュリティはビジネスチャンス