アプリケーションのセキュリティ向上のための Edge Serviceの戦略とベスト・プラクティス Prasad Kalyanaraman, VP Edge Services June 2016 © 2016, Amazon Web Services, Inc. or its Affiliates. All rights reserved. このセッションの目的 • なぜセキュリティが重要か • セキュリティの3つの重要な側面 • どのようにAWSのEdgeのインフラを活用できるか • アプリケーションのセキュリティ向上のため何ができるか 概要: なぜセキュリティが重要か • 顧客の信頼 • 企業コンプライアンス • データ・プライバシー • 保護 プレゼンテーションの目的は不安を煽ることではありません むしろご安心下さい : 1) AWS側で実施されるセキュリティ対策がたくさんあります 2) 簡単なベスト・プラクティスを守るだけでも結果が得られます 一例として、2015年のDDoS攻撃の下位90%は 30Gbps以下でアタックの平均サイズは15.8Gbpsでした DDoS攻撃の大半は、シンプルなテクニックを幾つか守 ることで簡単に緩和できます DDoS攻撃の測定データ • インフラへの攻撃 (Layer 3 / 4) – 攻撃の平均サイズは 900Mbps (50% は、500Mbps以下) – 攻撃の78% は、インフラが対象 (実行が簡単なため) – この種類の攻撃はAWSが緩和します • アプリケーションへの攻撃 (Layer 7) – 攻撃の22% は、 ポート80と443が対象 (攻撃が複雑) • マルチベクター –同時に複数種類の攻撃 • 増幅型(Amp) (NTP, SSDP, DNS, Chargen, SNMP) • Hit and Run DDoS (91% が1時間以内) 、煙幕型 (16-18%) セキュリティの3つの側面 クラウドのセキュリティは責任共有モデルがベース https://aws.amazon.com/compliance/shared-responsibility-model/ Encrypt data in transit Encrypt data at rest Protect your AWS Credentials Rotate your keys Secure your application, OS, Stack and AMIs SOC 1,2,3 ISO 27001/2 Certification PCI DSS 2.0 Level 1-5 HIPAA/SOX Compliance FedRAMP, FISMA & DIACAP ITAR AWSが提供するインフラを どのように守っているか インフラストラクチャ セキュリティ アプリケーション セキュリティ サービス セキュリティ AWSのお客様が利用可能なセ キュリティのオプションや機能 Enforce IAM policies Use MFA, VPC, Leverage S3 bucket policies EC2 Security groups EFS in EC2, ACM, etc. どのようにアプリケーションを 守るか インフラストラクチャ セキュリティ インフラストラクチャのセキュリティ アプリケーション セキュリティ サービス セキュリティ AWSは、どのようにインフラを保護しているか インフラストラクチャのセキュリティ AWSユーザの責任は? 施設・設備 物理セキュリティ キャッシュインフラ ネットワークインフラ Layer 3&4 DDoS対策 + = セキュアなアプリケーション インフラストラクチャのセキュリティ • メンテナンス用の踏み台(bastion)サーバ • 二要素認証 • 暗号化 • 隔離をより有効にするための分離 • テストや指標の監視 x インフラストラクチャのセキュリティ ISO 9001/27001/27017/27018 AWSインフラのDDoS緩和 DDoS 攻撃 ユーザ AWS DDoS 緩和 AWS DDoS 緩和 AWS global infrastructure DDoS 緩和のテクニック 基本的な確認 • IP チェックサム • 有効なTCPフラグ • UDP ペイロードの 長さ • DNSリクエストの認 証 トラフィックの優 先順位付け Distributionのシ グネチャー 高度なトラフィック エンジニアリング • ソースIP • ソースASN • トラフィック量 • 認証済みの送信元 • 個別のDistribution を区別する • 自動的に攻撃のト ラフィックを検知 • 攻撃と通常トラ フィックのルーティ ングを別ける AWS API Gateway CloudFrontは、自社製のDDoS対策のインフラでAPI Gatewayを守りTLSの終端をプロキシー側で行うこ とによりレスポンスタイムを短縮 グローバル 55箇所の Edge Location 健全なリクエスト 通常のリクエスト ユーザに近い場所で TLSの終端 DDoS 攻撃 悪意のある リクエスト 健全なリクエスト Amazon API Gateway Amazon EC2 インフラストラクチャ セキュリティ サービスのセキュリティ アプリケーション セキュリティ サービス セキュリティ エッジサービスで利用可能なセキュリティのオプションと機能 (CloudFront & Route53) サービスのセキュリティ AWSユーザの責任は? 強度の高い暗号化 SSL/TLSオプション PFS プライベートコンテンツ OCSP Stapling セッションチケット DDoS 対策 + 信頼された署名者 Web Application Firewall AWS CloudTrail AWS Certificate Manager = セキュアなアプリケーション CloudFrontは‘転送中のデータ’を保護できる CloudFrontによる転送データの保護 • 転送中のデータを保護するた めにコンテンツはHTTPSで配 信 • HTTPSでユーザは CloudFrontを認証する • HTTPSはCloudFrontはオリ ジンを認証する Origin Edge Location User Request A CloudFrontは、高度なSSLの機能を 自動的に有効化 高度なSSL/TLS機能 セキュリティの向上 SSL パフォーマンス • High security ciphers • Online Certificate Status Protocol (OSCP Stapling) • Perfect Forward Secrecy • Session Tickets ですが、やるべき事がいくつかあります HTTPSを使ったコンテンツ配信 • CloudFrontで 簡単に実現 • 一つのdistribution設定でHTTP/HTTPSの 両方のコンテンツを配信 • 以下の選択肢もあります • Strict HTTPS • HTTP を HTTPSへリダイレクト CloudFront TLS Options デフォルトの CloudFront SSL SNI 独自SSL CloudFront の共有証明書 自前でSSL証明書を用意 自前でSSL証明書を用意 または、 AWS Certificate Manager で発行 どのようなケース? 例: dxxx.cloudfront.net 専用 IP独自SSL TLSのSNI extensionを利用 どのようなケース? または、 AWS Certificate Managerで発行 CloudFrontでSSLコンテンツの配 信用に専用のIPを割り当てます どのようなケース? 例: www.mysite.com 例: www.mysite.com SNI extensionに非対応の古いブラウザー /OSが一部あります すべてのブラウザー/OSが対応 AWS Certificate Managerとの連携 ACM導入前 (複雑で時間がかかる) ACM導入後 (簡潔で素早く、自動化) 3-5 日 第三者の認証 局(CA) AWS CLIを使って IAMにアップロード AWS Certificate Manager 数分ですべての プロセスが完了 AWS CLIを使って CloudFrontに接続 管理コンソール上で 数クリックで実行 MapBox MapBox: SNI Custom SSLを利用 • 専用ドメインでの配信を希望 xxxxx.mapbox.com • クライアントはすべて TLSに対応 • 経済的な選択肢を検討 HTTPS の利用パターン • ハーフブリッジ型TLS 終端 • フルブリッジ型TLS 終端 フルブリッジ型TLS終端 • オリジンまでのコネクションをすべてHTTPS化 • CloudFront設定の[Match Viewer] を選択 Amazon CloudFront HTTPS MapBoxはオリジンを複数利用 • 複数のAPIのオリジンを使用 • 1つ目はハーフブリッジ型: Edge・オリジン間はHTTP • 2つ目はフルブリッジ型: Edge・オリジン間もHTTPS まだ終わっていません… 次は、アプリケーションの保護が必要です アクセス制御 もし以下のことをしたい場合… • 一部の限られたお客様にだけコンテンツを配信 • 決められた時間 までにだけコンテンツを公開したい • 特定のIPのみコンテンツへのアクセスを許可 アクセス制御: プライベートコンテンツ 署名付きURL 署名付きCookies • URLのクエリストリングに署名を追加 • Cookieに署名を追加 • URLが署名の箇所で変わる • URL は変わらない どのよな時に使うべきか? • 個別のファイルへのアクセスを制限する • Cookieに対応しないクライアントがある • RTMP ディストリビューションを使いたい どのような時に使うべきか? • 複数のファイルへのアクセスを同 時に制限したい • URLを変更したくない アクセス制御: プライベートコンテンツ アプリケーションはまだ開発中ですか? CloudFront へのアクセスを“InternalのIP アドレス”の みに制限してください まだ終わっていません… リクエストのパラメータをもとにアクセスを制 限したい場合はどうすべきでしょうか? 不必要なリクエストへの応答はお金がかかります Host: www.internetkitties.com User-Agent: badbot Accept: image/png,image/*;q=0.8,*/*;q=0.5 Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Referer: http://www.InTeRnEkItTiEs.com/ Connection: keep-alive スクレイパー・ボット AWS WAF Host: www.internetkitties.com User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64)….. Accept: image/png,image/*;q=0.8,*/*;q=0.5 Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Referer: http://www.mysite.com/ Connection: keep-alive アクセス制御: Web Application Firewall Host: www.internetkitties.com User-Agent: badbot Accept: image/png,image/*;q=0.8,*/*;q=0.5 Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Referer: http://www.InTeRnEkItTiEs.com/ Connection: keep-alive スクレイパー・ボット AWS WAF Host: www.internetkitties.com User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64)….. Accept: image/png,image/*;q=0.8,*/*;q=0.5 Accept-Language: en-US,en;q=0.5 Accept-Encoding: gzip, deflate Referer: http://www.mysite.com/ Connection: keep-alive MapBox WAFをBotをブロックしています ログ 一般ユーザ サーバ 悪意のあるユーザ 分析 ルール・アップデータ 防御に自動化が必要な攻撃 Attackers IP reputation lists HTTP floods Scans & probes Bots & scrapers AWS CloudTrail CloudFront API コールの履歴を記録: • セキュリティ分析 • リソースの変更管理 • コンプライアンスの監査 インフラストラクチャ セキュリティ アプリケーションのセキュリティ アプリケーション セキュリティ サービス セキュリティ どのようにアプリケーションとオリジンを守るか Application Security AWSユーザの責任は? IAM ポリシー + Origin Protection OAI 鍵のロテーション 証明書のロテーション = セキュアなコンテンツ配信 ハッカーはCloudFrontを迂回して直接オリ ジンにアクセスできます… アクセス制御: オリジンのAccess制限 カスタム Origin IPアドレスのブロック Pre-shared Secret Header Amazon S3 Origin Access Identify (OAI) • • Amazon S3バケットへの直接のアクセス を防ぐ すべてのお客様にとってパフォーマンス 面での利点がある • CloudFrontだけをホワイトリストに追加 • オリジンをオーバーロードから保護 • すべてのお客様にとってパフォーマンス面での利 点がある オリジンのベスト・プラクティス 1. Match Viewer Origin Protocol ポリ シー • • • オリジンではTLS 1.1 か1.2 のみを許可 オリジンへのコネクショ ンはHTTPSを強制 フルブリッジの HTTPSを必ず利用 2. セキュリティグループ や Shared Secretをつ かってアクセスを制限 3. SHA256の証明書を 利用 オリジンのベスト・プラクティス 4. ELBで独自証明書を利 用する 5. ELB 事前定義ポリシーを利用 6. HSTS ヘッダーを送る *Strict-Transport-Security: maxage=15552000; *X-Frame-Options: SAMEORIGIN *X-XSS-Protection: 1; mode=block Options AWS Certificate Managerから証明書を 発行できます 現在の設定内容を検証する方法 セキュリティの設定を検証する方法 https://www.ssllabs.com
© Copyright 2025 ExpyDoc