「今までなかった!?クラウドオブジェクトストレージのためのセキュリティを紹介」というタイトルで登壇しました

「今までなかった!?クラウドオブジェクトストレージのためのセキュリティを紹介」というタイトルで登壇しました
2021.07.14

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちはコカコーラ大好き、カジです。

6/24に登壇したAWS コンサルティングパートナーがお伝えする最先端のクラウドセキュリティ対策 – S3のファイルは安全ですか?AWSの設定は安全ですか? –の「今までなかった!?クラウドオブジェクトストレージのためのセキュリティを紹介」の内容について解説します。

資料

クラウドストレージ?

Amazon S3 (Amazon Simple Storage Service)

AWSの中核にあるストレージサービス

  • AWSのサービス開始当初から存在し歴史が長いサービス
  • インターネット経由で利用できるストレージサービス
  • データストレージとしてAWSの中核を担う存在
  • AWSでシステムを構築する際には、ほぼ間違いなく利用する

Amazon S3 の特徴

イレブンナイン(99.999999999%)の堅牢性

  • データをAmazon S3に保存しておけば、データ消失のリスクはほぼゼロに
  • Amazon S3では、保存されたファイルをリージョン内で3箇所以上のデータセンターに自動的に複製して保持
  • 可用性については99.99%の設計 (データを消失する可能性はほぼゼロですが、年間で計算すると1時間程度Amazon S3のサービスが停止する可能性がある、ということです。)

容量無制限

  • 保存できるデータ容量、ファイル数に制限なし
  • 従量課金なので使った分だけ料金は発生
  • 容量を気にせず使用できることは大きなメリット
  • データの総量に対する制限はありませんが、ファイルサイズには1ファイル最大「5TB」までという上限があり

そもそもS3ってどのような場合に利用するのか?

データのバックアップ

  • イレブンナインの堅牢性という特徴からデータバックアップストレージとしての用途
  • ディザスタリカバリ目的でオンプレミスにあるサーバのバックアップを保存
  • 個人でも写真や動画データをS3に保存することも可能

ログデータ等の保存先

  • EC2で稼働するアプリケーションのログ退避先
  • ビッグデータ分析で使用する生データ(基幹システムのDBからエクスポートしたCSVファイルなど)
  • 中間データ(生データを分析用に加工したもの)の保存先
  • 各種AWSサービスのログの保存先としてもAmazon S3を利用

コンテンツ配信

  • S3に保存したファイルはインターネット経由でアクセス可能
  • 「静的ウェブサイトのホスティング」の機能を使うと、S3自体をWebサーバとして機能させることも可能
    • Webサイトの静的コンテンツ(htmlファイル、画像ファイル、 javascriptファイルなど)をS3に保存
    • S3から直接クライアントに配信可能で、Webサイトをホス トするWebサーバの負荷を軽減することが可能

S3で持っているセキュリティ機能は?

S3のアクセスコントロール

Amazon Macie

  • 指定されたS3バケットの機微情報の評価・検出
  • 機微情報
    • 個人識別情報(PII)
    • 金融関連情報
    • 認証情報
  • 個人識別情報(PII)については、日本の運転免許証などは未対応

今まではどのようにS3のファイルをマルウェアスキャンしていたのか?

S3内ではファイル操作が発生せずファイルが操作・動作しないため直接の影響はないのですが、ダウンロード先で更なる拡散防止のためにお問い合わせ頂き、以下のような構成で面倒だった。

  • EC2(アプリケーションサーバなど)でファイル受信した際にDeep Securityなどセキュリティ対策製品でチェックし、その後にAWS SDK/CLIなどでS3へアップロードし保管
  • Deep Securityなどセキュリティ対策製品インストールされたEC2からS3のファイルをチェック

S3にアップロードしたオブジェクトはマルウェアスキャンしてくれるの?

S3にウィルススキャンという機能はありません

  • S3へオブジェクトをウィルススキャンするには...
    • アップロード前にウィルススキャン、アップロード後に別途ダウンロードしてウィルススキャン
  • データ管理は利用者側の責任のため、ウイルスチェックが必要な場合はユーザー側での対応が必要
    • S3バケット内ではファイル動作・操作しないためウィルスファイルの影響は無い

ダウンロード先で更なる拡散防止

ファイルの受け渡しを行うためダウンロード先でのさら なる拡散を防止したいと希望が多い。 要件に合わせた冗⻑性も検討必要でした。

Cloud One File Storage Security(略称:C1FSS)

フローとアーキテクチャー

  1. ユーザーがスキャンするファイルをS3 バケットにアップロード
  2. BucketListenerLambdaは、検出したs3Object CreateイベントからPreSigned URLをSQSに送付
  3. Scanner Lambdaは、SQS ScannerQueue からPreSigned URLメッセージを取得
  4. PreSigned URLの場所で S3内のファイルをスキャンします。 ファイルの識別情報をクラウド内のTrend Micro Global Smart Protection Serverに送信します。 Trend Micro Global Smart Protection Serverは、Trend Micro Smart Protection Network (図には示されていない) を利用して、ファイル識別情報 (ファイルではない)の残りのスキャンを実行します。スキャン結果は ScannerLambda に返されます。
  5. ScannerLambda はスキャン結果をストレージスタックのSNS ScanResultTopicに送ります。 またスキャン結果をFile Storage Securityコンソールに送信します。(コンソールは図には示されていません)。
  6. SNS ScanResultTopic がタグを設定するLambdaや別のアクションを行うLambdaに通知します。
  7. PostScanActionTagLambdaの機能は、AWSのタグを使用してファイルにスキャン結果を追加

詳細は以下の資料参照

利用シーン

C1FSSを利用することで、過去Deep Securityを利用するためにEC2を経由していましたが不要になりました。 Transfer for SFTPなどのS3と直接接続するようなサービスでも利用できるようになります。

AWSの利用費は?

1日平均200ファイルをスキャン 平均ファイルサイズ2MB=約50USD/月

(別途Cloud One File Storage Security費も必要)

導入手順(試用版で試せます)

Cloud OneアカウントやAWSアカウント作成を除外すると、10分くらいで構築できます。(C1FSSのCfnスタックの作成をクリック後、7〜8分程度で構築完了)

まとめ

  • 導入が非常にカンタン
  • サーバレスでS3にアップロードされた時のみ動作
  • サーバ運用不要なため構成に影響をあたえず運用

参考元

AWS再入門 Amazon S3編 | DevelopersIO

Trend Micro Cloud One – File Storage Security 入門