Skip to content

なぜ起きるクラウド経由の情報流出やクラウドへのサイバー攻撃 vol.1

クラウドとは

クラウド(Cloud)とは、インターネットを介して提供されるコンピューティングサービスのことを指し、サーバ、ストレージ、データベース、ネットワーク、ソフトウェア、アナリティクス、AIなどのサービスをオンデマンド、つまり必要に応じて必要な時に必要な分だけ利用することができます。そのため、オンプレミス(自組織でデータセンターやサーバを保有・運用する形態)と比べて、開発期間の短縮や柔軟なリソース手配、コスト削減等のメリットがあります。

このクラウドには以下の三つの形態があります。
IaaS(Infrastructure as a Service)は、基本的なコンピューティングリソース(仮想マシン、ストレージ、ネットワーク)をサービスとして提供します。ユーザは、OSやアプリケーション、データベースなどを自分で管理し、必要に応じてリソースを追加・削減できます。わかりやすく言うと、管理画面からボタンを押すことでサーバを建てたりネットワークを繋げたりセキュリティ等の機能を利用できる自由度の高いサービスです。
SaaS(Software as a Service)は、クラウド上で提供されるアプリケーションです。個人での利用も多いEメールサービスや音楽配信サービスもこの形態です。インフラやアプリケーションの管理はクラウド事業者が行い、利用者はアプリケーションを利用することに専念できます。
PaaS(Platform as a Service)は、IaaSとSaaSの中間的な形態で、少しわかりづらいかもしれません。SaaSと似ていますが、アプリケーションはサービスから提供されている部品を使い利用者が開発する形態です。ワークフローやアンケート、イベントの申込等で利用されることの多い形態です。
これらの形態はそれぞれ特徴が異なるため、それぞれの形態毎にセキュリティを考える必要があります。三形態全てについて記述するのは分量が多くなるため、以降はIaaSについて考えていきます。

なぜ設定不備が起こるのか

IaaSは、管理画面からボタンを押すことでサーバを建てたりネットワークを繋げたりセキュリティ等の機能を利用できますが、逆に膨大な数の機能と設定が存在します。そのため、簡単なことであっても、実際には複数で複雑な設定が必要であることがあり、誤った設定を行なってしまうリスクが高くなるのです。ここで、Webサービスを例にオンプレミスとクラウドにおけるサーバやネットワーク構成を比較します。
典型的なWebサービスは、ユーザとのやり取りを行うWebサーバ、画面の生成等を行うアプリケーションサーバ(以下APサーバ)、データを格納するデータベースサーバ(以下DBサーバ)で構成されています。
 構成図オンプレ


Webサーバは外部との通信が必要であるため、DMZと呼ばれる外部との通信が可能なエリアに設置しグローバルIPアドレスを付与します。APサーバとDBサーバは外部との通信は不要のため内部エリアに設置しプライペートIPアドレスを付与します。これらのサーバが通信を行うためにはLANケーブルの接続やIPアドレスの採番・付与、ファイヤーウォール(FW)やルータの設定等が必要になりますが、これらはネットワークを所管する部署、つまりネットワークの専門家によって行われることが多く、DBサーバを誤ってDMZに設置しグローバルIPを付与してしまいインターネットから接続可能となってしまうようなことはまず起こりません。

 

一方、同じものをIaaSで構築すると以下の図のようになります。

構成図クラウド

 

VPC(仮想プライベートクラウド)は、利用者がクラウド上に構築する仮想的なプライベートネットワークです。この中に各サーバ(クラウドではインスタンスと呼びます)を建てるのですが、その前にサブネットと呼ばれる領域を定義します。サブネットにはパブリックサブネットとプライベートサブネットがあり、違いはインターネットにアクセスできるかできないかです。パブリックサブネットを定義しWebサーバのインスタンスを生成しグローバルIPを付与します。プライベートサブネットを定義しAPサーバとDBサーバのインスタンスを生成しプライベートIPを付与します。ただし、この状態ではWebサーバはインターネットと全ての通信が可能であるためネットワークACLやセキュリティグループを設定しアクセス制御を行う必要があります。ネットワークACLはサブネット単位、セキュリティグループはインスタンス単位での制御が可能です。セキュリティグループは通信の向き等より細かい制御が可能です。
実は、概念的にはオンプレミスと同じものを構築すればよいのですが、設定は独特であり慣れが必要です。加えて、オンプレミスではネットワーク所管部署が「番人」のように関与することで自組織のポリシーに従った構成が徹底されていることが多いのですが、IaaSではシステム単位でネットワークを含め構築するため、「番人」が関与せず、全てのインスタンスをパブリックサブネットに生成したり、APサーバやDBサーバのサブネットをパブリックにしてしまったり等、オンプレミスでは起こり得ないようなことが起こってしまうのです。


さらに、クラウド特有の機能としてオブジェクトストレージがあります。これも要注意です。オブジェクトストレージとはAWSのAmazon S3やGoogle Cloud PlatformのGoogle Cloud Storage、Microsoft AzureのAzure Blob Storage等のことで、複数かつ様々な形式のデータが格納できるバケツ(Bucket)のようなストレージです。このオブジェクトストレージにはDBのバックアップが保存されていることも多いのですが、公開を目的とした他のデータが格納されていることもあります。その為、あるデータを公開しようと権限設定を行ったところ誤ってオブジェクトストレージ全体を公開してしまいDBのバックアップが公開されてしまうということが起こり得るのです。オンプレミスではDBのバックアップがインターネットから参照可能となってしまうようなことはまず考えられません。

IaaSにおける設定不備を防止する対策

IaaSはWAF(Web Application Firewall)等のセキュリティ機能も備わっており、オンプレミスと比較してセキュリティリスクが高いとは一概には言えないのですが、機能や設定の複雑さから設定不備が発生するリスクがあることは否めません。設置不備を防止するためには以下の対策が挙げられます。

セキュリティポリシーの策定

設定不備防止の観点では、ネットワークに関するセキュリティポリシーが重要になります。サブネットやセキュリティグループ、ネットワークACL等、IaaSの機能を踏まえた内容としたり、オンプレミスでは不文律となっているものを明文化したりする必要があります。

設定不備の検知

IaaSによっては、設定不備を検知するための機能が提供されている場合があります。具体的には、利用者が設定したポリシーや当該クラウドにおけるベストプラクティスと比較し乖離がある場合は通知を行うような機能です。このような機能を活用したりペネトレーションテストを行なったりすることによって設定不備が発生した場合でも早期の検知・対処を可能とします。

不正アクセスの検知

クラウド環境を監視し、万一、不正なアクセスや操作が行われたとしても早期に発見し対処を行います。具体的には、アクセスログや管理IDの使用ログ等を定期的に監視します。
これらの対策に加え、CSPM(Cloud Security Posture Management)と呼ばれるツールを利用することで設定ミスや不正アクセスの検知を強化することができます。


クラウドを利用するメリットは大きいものですが、そのメリットを享受するには正しく使いこなすことが重要であり、十分なセキュリティ対策が不可欠です。今回の記事はIaaSにおける設定不備という一部分に焦点を当てましたが、これ以外にも考慮すべき課題はいくつもあり、それぞれについて、クラウドの特性を理解した上でセキュリティ課題を洗い出し対策を行う必要があるのです。この記事がクラウドの安心・安全な活用に少しでも貢献できれば幸いです。


コンサルタント、フリーライター。
三菱UFJ銀行で12年間サイバーセキュリティに従事し、その後、Transmit Security 日本支社共同代表を経て独立。現在はサイバーセキュリティに関するコンサルティングやアドバイザー業務を行うとともに、国土交通省最高セキュリティアドバイザーや日本シーサート協議会専門委員、⾦融ISAC個⼈賛助会員として活動している。