※本記事は、Kiran Thakkarによる” Security – Like Layers of Onion (Defense) “を翻訳したものです。


概要

私は最大可用性アーキテクチャ(Maximum Availability Architecture:MAA)について読んでいて、読みながら最大限のセキュリティとはどういうものかについて考えてみました。そんなものは本当にあるのでしょうか?最大限のセキュリティなんてものは存在しません。検出の層と保護の層を追加はできますが、人的ミスやセキュリティ上の欠陥により、いつ何時も侵害されかねません。あまり気持ちの良い話ではないかもしれませんが、それが現実です。

 

セキュリティ – 玉ねぎの層のようなもの

セキュリティの層を構築することは新しい概念ではありません。その昔、王国は城を守るために何重ものセキュリティを構築していました。中世の城は、堀、門、壁、塔を備えた物理的なセキュリティ層であり、侵入者や攻撃者に対するさまざまな保護層となっていました。現代のセキュリティはというと、多層セキュリティまたは多層防御として知られる防御層の構築となります。

これらの層は玉ねぎのようなものです。玉ねぎは珍しい野菜ではありませんし、外から見ても特別なものには見えません。同様に、セキュリティも派手なものではなく、常に外部から見えるものでもありません。但し、玉ねぎを噛んでみると、何層も重なっていることが分かります。目には涙があふれますよね。

セキュリティにおいては、下の図に示すように、互いに支え合う防御層の盾となるセキュリティの玉ねぎを構築します。 1つの層に障害が発生したら、次の層がデータを保護します。層が多いほど、システムは (通常は) 安全になります。

 

Onionized Security

 

以下の図に見られるように、Oracle は、データ・セキュリティからインターネットおよびエッジ・セキュリティに至るまで、OCI 上に複数の(玉ねぎのような)セキュリティ層を実装しています。これらの層については順に説明します。このパート1のブログでは、データ・セキュリティとアプリケーション・セキュリティについて説明します。パート II では、残りのセキュリティ層について説明します。

 

OCI Layers of Security

 

データ・セキュリティ

データは、インフラストラクチャ内でセキュリティを必要とする最も基本的なエンティティ/オブジェクトであり、「至宝」とも呼ばれます。(前回のブログを参照してください。)データは不正なアクセス、変更、削除から保護されなくてはなりません。また、最大可用性アーキテクチャ(MAA)を設計し、さまざまなデバイス (コンピュータ、電話、タブレット、ウォッチ、API、CLI など) からデータにアクセスするためのツールを構築することで、中断のないシームレスなデータ・アクセスを確保します。

データ・セキュリティには 5 つの側面があり、順に説明します。

 

1. 悪意のある攻撃からのデータ保護

多くの場合、セキュリティの観点から、悪意のある個人 (外部の正規ユーザまたは内部ユーザ) からデータを保護することが優先されます。悪意のある攻撃を防ぐために、いくつかのセキュリティ制御が導入されています。ただし、ラスト・ワン・マイルのデリバリが鍵となりますが。参考までに以下に列挙してみました。

  • 内部ネットワークとインターネットとの境界におけるセキュリティ(ペリメータ・セキュリティ)の導入により、不正なアプリケーションまたは不正なネットワーク・ソースへのアクセスを防止する
  • 定期的にアクセス・ガバナンス演習を実施して、時間が経ったデータ・アクセスを無効にする
  • エンド・トゥー・エンドの ID ライフサイクル管理を実装して、アカウントを解除する
  • 悪意のあるデータ・アクセスをモニタリングし検出するため、監視およびレポートのツールを導入する

 

2. 不正アクセスからのデータの保護

データはあらゆるインフラストラクチャにおける「至宝」です。不正アクセスは悪意のあるアクセスよりも範囲が広く、検出が困難です。監視の観点からは、他の正当なアクセスと同じように見える場合があります。例えば、ユーザーはマーケティング・キャンペーンの結果を分析しながら 個人情報(PII)データにアクセスしている場合もあります。よって、データへの不正アクセスを防ぐための IDとアクセス管理(IAM)の原則ないしはフレームワークがあります。

  • 最小権限の原則
  • データへのアクセスを許可する際の職務分掌
  • ゼロ・トラスト (アプリケーションまたはユーザーが既知の場所またはデバイスからデータにアクセスしようとしているだけでは、データへのアクセスは許可されない)

 

3. データ漏洩からのデータ保護

ユーザーは通常の業務の中で特定のデータ・セットにアクセスしているかもしれませんが、膨大な件数を一括で抽出しようとするとき、それは履歴レポートを生成する必要があるためでしょうか、それとも明日辞めて顧客情報を携えて去るつもりだからでしょうか。もしくは、ソーシャル・エンジニアリング攻撃の被害者になったか、認証のための識別情報が侵害された可能性があるでしょうか。通常の予期される動作の境界を特定し、ユーザーが毎日使用するデータに対して許可される操作を制限することは、この状況を防ぐための重要な対策です。行動分析によるデータ監視をすることで、データ漏洩の試みを回避または阻止できます。

 

4. データの可用性の確保

データ・アクセスする際は、多くの利用可能なツールのどれかを介し、さまざまなデバイスを使用します。それは、CLIやWeb ベースのアプリケーション、もしくは API クライアントかもしれません。安全な可用性を確保するための重要な設計原則の1つは、単一の共有インターフェイス (API レイヤー) を使用してデータにアクセスすることであり、すべてのツールがそのインターフェイスを使用することです。その上で、セキュリティの監視をしつつ、可用性と認証を確実なものとするためのスケーリングを実装できます。

 

5. データの安全な転送の確保

TLS の使用を強制することは比較的簡単にできます。ただし、複数のツールを使用する場合は、すべてのデバイスが TLS の安全なバージョン (TLS 1.3) を実装していることを確認することが重要です。そこに盲点があると、データ漏洩やデータ侵害につながる可能性があります。

 

OCIのデータ・セキュリティ

  1. OCI に保存されたデータは (ストレージ・サービスやデバイスに関わらず) 常に暗号化される。
  2. お客様は、カスタマー・マネージド・キーを使用してデータを暗号化することが可能。また、お好きな HSM ソリューションを OCI ボルト・サービスと統合することも可能。
  3. 管理者は、データへのアクセスを許可する IAM ポリシーを明示的に作成する必要があり、デフォルトでは、認証されたユーザーであってもデータにはアクセスできない。
  4. アーカイブ ・ストレージにデータの安全なバックアップを作成する。
  5. データには、TLS 対応インターフェイス経由でのみアクセスが可能。
  6. DLP(Data Loss Prevention)機能により、オブジェクト・ストレージからデータを分類し、データ漏洩の試みからデータを保護する。

 

アプリケーションのセキュリティ

エンドユーザーにとってアプリケーションとは、データ・アクセスのための最初で直接的なインターフェイスです。インターフェイスへは、安全なネットワークと安全でないネットワークの両方からの接続がありえます。これにより、アプリケーションがさまざまな脆弱性や脅威にさらされることになります。そのため、アプリケーションには、ID とアクセス管理、Webアプリケーション・ファイアウォール、API セキュリティ、サイバーセキュリティ・テストをはじめとする、多くの予防のための制御とプロセスが展開されるのです。

APIセキュリティ

API は、次世代のマイクロ・サービス・アプリケーションの基礎です。 全面的なAPI エコノミーが出現し、今や企業はツール間ないしは組織間でデータを安全に共有できるようになりました。 API は強力で多くの統合を可能としますが、機密データが晒され、重大なデータ侵害が発生する可能性もあります。 よくあるAPI のセキュリティ問題は、弱い認証、DDoS 攻撃のリスク、および望ましくないデータの露見です。 API ゲートウェイ・サービスにより、管理を一元化し、すべての API の監査や監視を含むポリシーベースのセキュリティ制御を実装いただけます。

Webアプリケーション・ファイアウォール (WAF)

WAF ツールは、アプリケーションとインターネット (エンドユーザー) 間のトラフィックを監視し、保護します。これは、クロスサイト・スクリプティング、SQL インジェクション、OWASP 脅威、クロスサイト・リクエスト・フォージェリなどから保護するレイヤー 7の防御として機能します。また、高度なボット攻撃からアプリケーションを保護することもできますし、ネットワークのソースに基づいてアクセス制御を強制し署名を要求することもできます。ユーザーとアプリケーションのトラフィックを分析して異常を特定し、既知および未知の脆弱性からアプリケーションを保護することもできます。

ID とアクセス管理 (IAM)

Web アプリケーションはデータにアクセスするための直接のインターフェイスであるため、IAM は強制的に認証と認可をしてデータへの不正アクセスを防ぐのに役立ちます。最新のコンテキスト・ベースの認証と認可においては、ユーザーのアクセス・パターンの異常を検出し、不正アクセスをブロックできます。

Oracle Cloud Infrastructureは、3つのアプリケーション・セキュリティ・サービス(WAF、API ゲートウェイおよびIAM)をすべてサポートし、顧客がアプリケーションを保護し、ひいてはそれらのアプリケーションがアクセスするデータの保護を可能にします。

 

ネットワークのセキュリティと可観測性

ID サービスのマーケティング的な文句に反して、ネットワークは依然として重要なセキュリティ境界、またはクラウド・セキュリティの基礎防御層の1つです。クラウド環境内に展開されたデータ、アプリケーション、IT リソース、およびクラウドとオンプレミス環境の間を流れるトラフィックの保護に役立ちます。どんなにセキュリティを強化しても、100%のセキュリティを確証し保証することはできません。オラクルでは、侵害が発生することを想定し、可観測性および監視プラットフォームの一部として、それらの侵害を検出して対応するためのツールを構築しています。次回 (ブログのパート II) では、ネットワーク・セキュリティと可観測性の両方について説明します。

 

リソース

OCIセキュリティ・アーキテクチャ (英語)
OCIセキュリティの概要
オラクルのセキュリティ・ブログ (英語)
OCI WAF
OCI APIゲートウェイ
OCI IAM

 


キラン・タッカー
コンサルティング・ソリューション・アーキテクト
Kiran Thakkar は、ID およびアクセス管理の専門家であり、この分野に 10 年以上従事しています。OCI 認定アソシエイト アーキテクトでもあり、OCI のユースケースについてお客様をサポートしています。また、ブロックチェーン技術を信じており、その領域の成長を追いかけています。