Slide 1

Slide 1 text

S3の話をしよう ~ S3のコストとセキュリティについて考える ~ ླ໦݈ే 1

Slide 2

Slide 2 text

自己紹介 名前︓鈴⽊健⽃ 所属︓アイレット株式会社 お仕事︓ AWSのインフラ構築・運⽤ 経歴︓ ・新卒 3 年⽬(エンジニア歴 = 社会⼈歴) ・2022 APN ALL AWS Certifications Engineer ・2022 APN AWS Top Engineer Twitter︓ @k_suzuki_pnx 2

Slide 3

Slide 3 text

クラウド 導⼊実績 2,500 社以上 クラウドの導⼊設計から構築、監視、運⽤、 さらにはシステム開発やデザインまで、 総合的なサービスをワンストップに提供 年間 プロジェクト 4,300 以上 AWS 最上位パートナー 9年連続認定 3

Slide 4

Slide 4 text

S3について 4

Slide 5

Slide 5 text

一言で スケーラビリティ / データ可⽤性 / セキュリティ / パフォーマンス を提供 オブジェクトストレージサービス 5

Slide 6

Slide 6 text

99.9% の可用性 1 千万のオブジェクトが格納されている場合、 1 つのオブジェクトで損失が起きる予測平均発生率は、 1 万年に 1 度 99.9999999% (イレブンナイン) の耐久性 オブジェクトは 1 つの AWS リージョン内で少なくとも 3 つの AZ にまたがった複数のデバイスで自動的に保存 データが失われにくい 使えない期間が短い 驚くなかれ!イレブンナインの耐久性!! 6

Slide 7

Slide 7 text

度々取り上げられるS3 からの漏洩 ・⽶⼤⼿通信サービスで加⼊者の⽒名、住所、本⼈確認⽤の暗証番号等が公開されていた(2017/07) ・ハッカーが S3 でホストされいているECサイトに悪意のあるコードを埋め込む (2019/04) ・⽶国刑務所の受刑者情報が漏洩 (2020/01) ・⽶国の 80 を超える⾃治体でデータ侵害 (2021/07) ・空港機密データ 3TB が流出(2022/07) ・ゲーム企業でRSA キー や AWS のアクセスキーなどが公開されていた(2022/01) etc. 7

Slide 8

Slide 8 text

そうだ、セキュリティを高めよう!! 8

Slide 9

Slide 9 text

セキュリティを高めようとすると費用や手間も UP⤴⤴ 9

Slide 10

Slide 10 text

10 どれくらい費用や手間が 掛かるか分からない 調査する時間がない

Slide 11

Slide 11 text

今回の目的 普段意識しなさそうな S3 のコスト効率とセキュリティを⾼められる AWS の機能を紹介 11 新卒 3 年⽬の私が考えみた

Slide 12

Slide 12 text

S3セキュリティ関連機能 12

Slide 13

Slide 13 text

ブロックパブリックアクセス 無料で漏洩を防ぐ簡単・便利な機能 S3 をパブリックへ公開する機能は 3つ ・アクセスコントロールリスト(ACL) ・バケットポリシー ・アクセスポイントポリシー この3つで許可されているパブリックアクセスを無視 もしくは、新たな設定を作成できなくする 13

Slide 14

Slide 14 text

「パブリックアクセスをすべてブロック」 基本これで設定しておけば OK 14

Slide 15

Slide 15 text

なんとなく一番上の 「パブリックアクセスをすべてブロック」 だけ使ってませんか? 15

Slide 16

Slide 16 text

この4つの項⽬を 理解して使ってますか︖ 16

Slide 17

Slide 17 text

バケットをパブリックに公開するような 1. アクセスコントロールリスト(ACL)を新たに作れなくする 2. アクセスコントロールリスト(ACL)を無視する 3. バケットポリシー、アクセスポイントポリシーを新たに作れなくする 4. バケットポリシー、アクセスポイントポリシーを無視する ブロックパブリックアクセス 4つの項⽬ 17

Slide 18

Slide 18 text

ドキュメントを⾒ると アクセスコントロールリスト(ACL)について Amazon S3 の最新のユースケースの大部分では ACL を使用する必要がなくなり、 オブジェクトごとに個別にアクセスを制御する必要がある異常な状況を除き、 ACL を無効にすることをお勧めします。 という記載があるため、基本はチェックボックスを有効化 18 アクセスコントロールリスト (ACL) の概要 https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/acl-overview.html

Slide 19

Slide 19 text

バケットポリシー アクセスポイントポリシーは時間の関係上割愛 19

Slide 20

Slide 20 text

バケットとその中のオブジェクトへのアクセス許可を付与できるリソースベースのポリシー ・ Json で記述 ・次のような制限が可能 ・特定の IAM ユーザからのみアクセスに制限 ・HTTPS を介した暗号化接続のみを許可 ・特定の IP アドレスからのアクセスのみを許可 ・特定のVPCエンドポイント経由からのアクセスのみを許可 バケットポリシー 20

Slide 21

Slide 21 text

IAMと組み合わせて使⽤すると強⼒ 21

Slide 22

Slide 22 text

ログ関連 AWS CloudTrail, Amazon S3 サーバーログ 22

Slide 23

Slide 23 text

CloudTrail と S3 サーバーアクセスログの違い 〜 料⾦ 〜 ・CloudTrail ・配信されるデータイベント 100,000 あたり 0.10 USD (管理イベントに関しては2つ⽬の証跡を作成しない限りは無料) ・ログの保存料⾦(S3, CloudWatch Logs) ・S3 サーバーアクセスログ ・ログの保存料⾦(S3) Amazon S3 のログ記録オプション https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/logging-with-S3.html 安価にログを取得したい場合 → S3 サーバアクセスログ 23

Slide 24

Slide 24 text

CloudTrail と S3 サーバーアクセスログの違い 〜 機能 〜 ・CloudTrail ・CloudWatch Logs に転送可能 → 特定の API 実⾏時に通知させることができる (アラーム、SNSの料⾦は追加) ・ログの配信速度 ・データイベント (5 分ごと) ・管理イベント (15 分ごと) ・S3 サーバーアクセスログ ・S3への転送 ・ログの配信速度は数時間以内 Amazon S3 のログ記録オプション https://docs.aws.amazon.com/ja_jp/AmazonS3/latest/userguide/logging-with-S3.html 通知設定を入れたい場合 → CloudTrail 24

Slide 25

Slide 25 text

暗号化 コストに合わせて選べる暗号化の方法 25

Slide 26

Slide 26 text

S3 を暗号化する 4つの⽅法 サーバーサイド( S3 内での暗号化) ・SSE-S3 (S3 が管理する暗号化キーによる暗号化) ・SSE-KMS (AWS Key Management Service を利⽤した暗号化) ・SSE-C (ユーザが管理する鍵を利⽤した暗号化) クライアントサイド(ローカル、インスタンス等での暗号化) ・CSE ローカルで暗号化し、暗号化されたファイルを S3 へアップロード 26 Protecting data using encryption https://docs.aws.amazon.com/AmazonS3/latest/userguide/UsingEncryption.html

Slide 27

Slide 27 text

料⾦⽐較 サーバーサイド ・SSE-S3 → 無料 ・SSE-KMS → KMSの料⾦ ・キー本体(1 USD) & 呼出し( 10,000 リクエスト当たり0.03USD ) ・SSE-C ・料⾦は発⽣しないが、鍵を管理する⼿間が発⽣ クライアントサイド ・CSE → KMS を使⽤する場合 は料⾦が発⽣ ※ AWS Encryption SDK のデータキャッシュ機能を使うことで節約可能 27

Slide 28

Slide 28 text

実際にあった構成 クライアントサイド と サーバサイドで二重の暗号化 28

Slide 29

Slide 29 text

S3 はよく使う → 把握しているつもり でも、「知らない」「普段意識してない」機能があったりする… 皆様、 改めて S3 について 考えてみませんか?? おわりに 29

Slide 30

Slide 30 text

クラウド 導⼊実績 2,500 社以上 クラウドの導⼊設計から構築、監視、運⽤、 さらにはシステム開発やデザインまで、 総合的なサービスをワンストップに提供 年間 プロジェクト 4,300 以上 AWS 最上位パートナー 9年連続認定 30

Slide 31

Slide 31 text

参考(漏洩関連) Cloud Leak: How A Verizon Partner Exposed Millions of Customer Accounts https://www.upguard.com/breaches/verizon-cloud-leak Over 80 US Municipalities’ Sensitive Information, Including Resident’s Personal Data, Left Vulnerable in Massive Data Breach https://www.wizcase.com/blog/us-municipality-breach-report/ Report: Inmates’ Prescriptions & PII Leaked in Breach Spanning Multiple Jailhouses https://www.vpnmentor.com/blog/report-jailcore-leak/ Spray and Pray: Magecart Campaign Breaches Websites En Masse Via Misconfigured Amazon S3 Buckets https://www.riskiq.com/blog/labs/magecart-amazon-s3-buckets/ SEGA Europe Thoroughly Scrutinizes its Cloud Security https://vpnoverview.com/news/sega-europe-security-report/ It’s Plane To See – Unsecured Servers Can Put Lives at Stake How An Exposed Amazon S3 Bucket Exposed 3TB Worth Of Sensitive Airport Data https://www.skyhighsecurity.com/en-us/about/resources/intelligence-digest/unsecured-servers-can-put-lives-at-stake.html 31