AWS Black Belt Online Seminar AWS Shield アマゾンウェブサービスジャパン株式会社ソリューションアーキテクト安司仁 2017.07.18
紹介 安司仁 ( あんじひとし ) メディア エンターテインメントソリューション部 ソリューションアーキテクト 主に新聞 / 出版 /TV 局などメディアのお客様を担当 好きな AWS のサービス : AWS Simple Storage Service Shield 2
内容についての注意点 本資料では 2017 年 7 18 時点のサービス内容および価格についてご説明しています 最新の情報は AWS 公式ウェブサイト (http://aws.amazon.com) にてご確認ください 資料作成には 分注意しておりますが 資料内の価格と AWS 公式ウェブサイト記載の価格に相違があった場合 AWS 公式ウェブサイトの価格を優先とさせていただきます 価格は税抜表記となっています 本居住者のお客様が東京リージョンを使 する場合 別途消費税をご請求させていただきます AWS does not offer binding price quotes. AWS pricing is publicly available and is subject to change in accordance with the AWS Customer Agreement available at http://aws.amazon.com/agreement/. Any pricing information included in this document is provided only as an estimate of usage charges for AWS services based on certain information that you have provided. Monthly charges will be based on your actual use of AWS services, and may vary from the estimates provided. 3
Agenda DDoS 対策 AWS Shield AWS Shieldオペレーション まとめ 4
5 DDoS 対策
セキュリティ脅威のタイプ DDoS Application Attacks Bad Bots アプリケーション層 HTTP floods SQL injection Social engineering Sensitive data exposure Application exploits Crawlers Content scrapers Scanners & probes ネットワーク / トランスポート層 Reflection SSL abuse Amplification Slowloris Layer 4 floods 6
DDoS とは? Distributed Denial Of Service 7
DDoS 攻撃の緩和における課題 むずかしさはどこにある? 複雑な前準備 事前の帯域確保 アプリケーションの 直し 8
DDoS 攻撃の緩和における課題 マニュアルでの対策 Traditional Datacenter 緩和を開始するにはオペレータの関与が必須 9 離れたスクライビング場所からどうやってトラフィックを誘導する? 軽減までの時間
お客様によるDDoS 対策 次の5つの観点から対策を検討 実施 攻撃対象領域を削減する スケールして攻撃を吸収できるようにする 公開されたリソースを保護する 通常時の動作について学習する 攻撃に対する計画を作成する 10 http://media.amazonwebservices.com/jp/ddos%20white%20paper_revised.pdf
こんなお客様の声 きな DDoS によって何が起こるのか? AWS はアプリレイヤの DDoS 攻撃からもまもってくれるのか? AWS は DDoS からまもってくれるのか? DDoS のエキスパートと話をしたい どんな攻撃をうけているのかしることができるのか? DDoS 攻撃へのスケーリングはコストがかかりすぎる 11
12 DDoS 攻撃の緩和における課題
AWS におけるゴール お客様ビジネスの差別化要素にならないことの肩代わり 可 性の確保 ありきたりの攻撃は 動保護 AWS 上のサービスは 可 である
DDoS 防御は AWS に予め組み込まれている AWS のグローバルインフラストラクチャに統合 外部ルーティングなしで常時オン 速 AWS データセンターで冗 インターネット接続 14
セキュリティ脅威のタイプ AWS Shield DDoS Application Attacks Bad Bots アプリケーション層 HTTP floods SQL injection Social engineering Sensitive data exposure Application exploits Crawlers Content scrapers Scanners & probes ネットワーク / トランスポート層 Reflection SSL abuse Amplification Slowloris Layer 4 floods 15
AWS Shield Standard Protection Advanced Protection 全ての AWS ユーザに適 無料 より 規模な より洗練された攻撃からの防御を提供する 有料のサービス 16
17 AWS Shield Standard
AWS Shield Standard Layer 3/4 protection ü 般的な攻撃 (SYN/UDP フラッド 反射攻撃等 ) から防御 ü 動検知 & 動緩和 üawsサービスにビルトイン済 Layer 7 protection ülayer 7のDDoS 攻撃への緩和は AWS WAFで う üセルフサービス ü 使った分だけの 払い 18 https://aws.amazon.com/jp/shield/tiers/ http://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/ddos-overview.html#types-of-ddos-attacks
L3/L4 動緩和システム これまでの DDoS 保護経験に基づき L3 / L4 動緩和システムを開発 CloudFront Route53 エッジロケーションの前にインラインで配置され すべての着信パケットを検査 Edge Location AWS Region DDoS 攻撃の 96% を 動軽減 追加設定や 数料なし 利点 DDoS Attack CloudFront Route 53 Customerʼs Origin Infrastructure (ELB, EC2, S3, etc). スケーラビリティと低コスト 常時保護 User 動緩和システム CloudFront Route 53 動緩和 AWS ソリューション に構築 19
DDoS 攻撃排除例 May 6, 2015 Route53の34のエッジロケーションを標的としたDNS フラッド攻撃 ピークボリュームは今までのDDoSのトップ4% に る規模 (source: Arbor Networks) 動的に検知を い 可 性に影響を与えることなく緩和 毎年数百件のアタックを鎮静化 20
DDoS 攻撃排除例 Amazon Route 53 Response Time May 6, 2015 Route53の34のエッジロケーションを標的としたDNS フラッド攻撃 ピークボリュームは今までのDDoSのトップ4% に る規模 (source: Arbor Networks) 動的に検知を い 可 性に影響を与えることなく緩和 毎年数百件のアタックを鎮静化 21
22 AWS Shield Advanced Managed DDoS Protection
AWS Shield Advanced 現在提供中のサービス Classic Load Balancer Application Load Balancer Amazon CloudFront Amazon Route 53 23
AWS Shield Advanced 現在提供中のサービス Classic Load Balancer Application Load Balancer Amazon CloudFront Amazon Route 53 提供リージョン Virginia, Oregon, Ireland, Tokyo AWS WAF との連携 Global に設定 24
AWS Shield Advanced Shield Standard による保護に加え 以下の機能による包括的な DDoS 対策ソリューションを提供 DDoS Response Team L7 DDoS Protection Cost Protection Advanced Mitigation Reporting 25 http://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/ddos-overview.html#typesof-ddos-attacks
DDoS Response Team 24x7 で DDoS Response Team(DRT) へアクセス可能 AWS と Amazon.com を保護する知識と経験を持った DDoS の専 家チーム サポートケース経由でのアクセス 事前の構成相談対応 クリティカルで緊急の優先順位のケースはすぐに回答され DRT に直接ルーティング 複雑なケースは DRT にエスカレーションすることもできます 26
24x7 での DDoS Response Team へのアクセス Before Attack During Attack After Attack コンサルテーションとベストプラクティス提供 攻撃からの緩和 事後分析 27
28 L7 DDoS/Cost Protection L7 DDoS Protection :AWS WAF で保護します 別途 AWS WAFの料 は不要です CloudFront, Application Load Balancer DRTによるセットアップ 援 セルフサービスで構成 Cost Protection DDoS 攻撃によるスケーリングコストは請求しません CloudFront Application Load Balancer Classic Load Balancer Route 53
Advanced Mitigation Layer 3/4 infrastructure protection Layer 7 application protection 29
Layer 3/4 infrastructure protection 度な軽減技術の採 決定論的フィルタリング スコアリングに基づくトラフィックの優先順位付け 度なルーティングポリシー 30
AWS WAF Layer 7 application protection 31 カスタムルールによる Web トラフィックフィルタ 悪意のあるリクエストのブロック アクティブな監視とチューニング
Advanced Mitigation DRT による 動セットアップで攻撃を緩和 度な軽減の例 Switching IP address spaces (L3/L4/L7) IP Unicast to Anycast(L3/L4/L7) Custom WAF block rules (L7) Prioritization using packet scoring (L3/L4) 32 Filtering Scoring Routing WAF
Reporting CloudWatchを経由してリアルタイム通知 ニアリアルタイムメトリクスと攻撃のフォレンジクスのためのパケットキャプチャ 時系列の攻撃レポート 33 Attack monitoring and detection
AWS Shield Advance 運 は 3 形態 Self-service DDoS エキスパートによる対応 積極的な DRT の関与 34 http://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/ddosoverview.html
AWS Shield Advance Self-service AWS WAF が追加費 なしで含まれます L3/L4 も含めた攻撃の通知 フォレンジック / 履歴レポートを活 35
AWS Shield Advance DRT:DDoS エキスパートによる対応 1. サポートケースから AWS DRT を依頼 2. DRT は攻撃に優先度を付ける 3. DRT は AWS WAF ルールの作成を 援 36
AWS Shield Advance 積極的な DRT 関与 1. Always-On モニタリングが DRT を呼び出す 2. DRT が積極的に分類 ( トリアージ ) 3. DRT が AWS WAF ルールを作成 ( 事前承認 設定が必要です ) 37
AWS DDoS Shield: 価格 Standard Protection Advanced Protection 利 コミット不要 追加コストなし 1 年の利 コミット 額費 : $3,000 +Data transfer fees Data Transfer Price ($ per GB) CloudFront ELB First 100 TB $0.025 $0.050 Next 400 TB $0.020 $0.040 Next 500 TB $0.015 $0.030 Next 4 PB $0.010 Contact Us Above 5 PB Contact Us Contact Us 38 https://aws.amazon.com/jp/shield/pricing/
39 AWS Shield Advanced オペレーション
AWS Shield Advanced を利 するまでのステップ IAM ユーザの準備 AdministratorAccess ポリシーをもつグループ / ユーザを準備 AWS Shield Advanced 設定 1: AWS Shield Advanced を有効化 2: AWS リソースに AWS Shield Advanced 保護を追加する 以下 運 形態によって検討ください 3: ルールとウェブ ACL を作成する権限を DDoS Response Team (DRT) に付与 4: AWS WAF セキュリティ 動化をデプロイ 40
AWS Shield Advanced を利 するまでのステップ IAM ユーザの準備 AdministratorAccess ポリシーをもつグループ / ユーザを準備 AWS Shield Advanced 設定 1: AWS Shield Advanced を有効化 2: AWS リソースに AWS Shield Advanced 保護を追加する 以下 運 形態によって検討ください 3: ルールとウェブ ACL を作成する権限を DDoS Response Team (DRT) に付与 4: AWS WAF セキュリティ 動化をデプロイ 41
AWS Shield にアクセスする準備 AWS Shield を利 するためのユーザ設定 1: AWS アカウントをサインアップする # 皆様すでにお持ちかと思います 2: IAM ユーザーを作成する Shield 操作 のユーザを作成 必要なポリシーは AdministratorAccess 3: ツールをダウンロードする プログラムから利 する場合 42 http://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/ setting-up-waf.html
43 まずは Shield 画 にアクセス
Shield コンソール画 Protected resources リンクからアクセス 44
AWS Shield Advanced を利 するまでのステップ IAM ユーザの準備 AdministratorAccess ポリシーをもつグループ / ユーザを準備 AWS Shield Advanced 設定 1: AWS Shield Advanced を有効化 2: AWS リソースに AWS Shield Advanced 保護を追加する 以下 運 形態によって確認ください 3: ルールとウェブ ACL を作成する権限を DDoS Response Team (DRT) に付与 4: AWS WAF セキュリティ 動化をデプロイ 45
AWS Shield Advanced を有効化 Activate Shield Advanced ボタンを押す I agree とタイプ 46
AWS Shield Advanced を利 するまでのステップ IAM ユーザの準備 AdministratorAccess ポリシーをもつグループ / ユーザを準備 AWS Shield Advanced 設定 1: AWS Shield Advanced を有効化 2: AWS リソースに AWS Shield Advanced 保護を追加 以下 運 形態によって確認ください 3: ルールとウェブ ACL を作成する権限を DDoS Response Team (DRT) に付与 4: AWS WAF セキュリティ 動化をデプロイ 47
AWS Shield Advanced の保護対象おさらい Classic Load Balancer Application Load Balancer Amazon CloudFront Amazon Route 53 AWS WAF の防御対象 Global に設定 48 https://aws.amazon.com/jp/waf/faq/
AWS Shield Advanced 保護を追加 CloudFront の場合 :Global で設定 Resource Type: CloudFront distribution Region: Global で固定 AWS resource: 保護対象 distribution 選択 Protection name: distribution 名 がセットされるが 任意に変更可能 Network DDoS attack visibility: Enable にデフォルトでチェック 変更不可 Web DDoS attack: AWS WAF 適 対象のため Enable にチェックが る 変更可すでに連携されている WAF ACL があれば選択済み 無ければ既存 ACL から選択するか 新しい web ACL を作成 Network DDoS attack mitigation: Enable にデフォルトでチェック 変更不可 49
AWS Shield Advanced 保護を追加 ELB Application Load Balancer の場合 Resource Type: ELB Application Load Balancer を選択 Region: 保護対象のリージョンを選択 AWS resource: 保護対象の ALB を選択 Protection name: ALB 名 がセットされるが 任意に変更可能 Network DDoS attack visibility: Enable にデフォルトでチェック 変更不可 Web DDoS attack: AWS WAF 適 対象のため Enable にチェックが る 変更可能すでに連携されている WAF ACL があれば選択済み 無ければ既存 ACL から選択するか 新しい web ACL を作成 Network DDoS attack mitigation: Enable にデフォルトでチェック 変更不可 50
AWS Shield Advanced 保護を追加 Route53 の場合 Resource Type: Route53 を選択 Region: Global で固定 AWS resource: 保護対象の Zone を選択 Protection name: Zone 名 がセットされるが 任意に変更可能 Network DDoS attack visibility: Enable にデフォルトでチェック 変更不可 Web DDoS attack: AWS WAF 適 対象外のため Enable にチェックが らない 変更不可 Network DDoS attack mitigation: Enable にデフォルトでチェック 変更不可 51
AWS Shield Advanced 保護を追加 ELB Classic Load Balancer の場合 Resource Type: ELB Classic Load Balancer を選択 Region: 保護対象のリージョンを選択 AWS resource: 保護対象の CLB を選択 Protection name: CLB 名 がセットされるが 任意に変更可能 Network DDoS attack visibility: Enable にデフォルトでチェック 変更不可 Web DDoS attack: AWS WAF 適 対象外のため Enable にデフォルトでチェックが らない 変更不可 Network DDoS attack mitigation: Enable にデフォルトでチェック 変更不可 52
AWS Shield Advanced 保護を追加 現在の保護対象リソース ステータスを 覧確認 Summary of protected resources に設定したそれぞれのリソースの総数が表 Incidents in the last 24 hours に直近 24 時間以内に発 した過去の Incidents/ 対応中の Incidents 数が表 Protected resources に保護対象リソースの 覧が表 関連する web ACL が表 Add protected resource で保護対象のリソース追加が可能 53
AWS Shield Advanced 保護を追加 有効化時に新規作成した WAF ACL の確認 54
AWS Shield Advanced の Report 機能 以下の 2 つの 法で DDoS レポートを確認 AWS Shield コンソール incidents 画 CloudWatch 55
Shield Advanced の Report 機能 : Incidents 画 現在対応中 / 過去対応したものを 覧表 AWS resource affected 影響を受けたリソース Attack vectors 攻撃種別 Status 対応中のものは Current Incident に表 Incident start time いつ Incident が始まったか Incident duration 対応に要した時間 56
Sample Incident Incident は以下の様に表 される ( 例 ) CloudWatch の該当メトリックを表 57
Shield AdvancedのReport 機能 :CloudWatch CloudWatchでの確認 メトリックス >AWS/DDoSProtection>AttackVector, ResourceArn Global(CloudFront/Route53) リソース > バージニア北部での確認 その他メトリックス同様にアラート設定が可能 58 http://docs.aws.amazon.com/waf/latest/developerguide/set-ddos-alarms.html
Shield Advanced の Report 機能 :CloudWatch CloudWatch での確認 (CloudFront/Route53) バージニア北部 リージョンで確認 それぞれの攻撃種別毎にメトリックが確認できる >0 の場合 DDoS 発 している 59
Shield Advanced の Report 機能 :CloudWatch CloudWatch での確認 (ELB) 保護対象リソースのリージョンで確認 それぞれの攻撃種別毎にメトリックが確認できる >0 の場合 DDoS 発 している 60
Shield Advanced の Report 機能 :CloudWatch メトリックスとしては 2 つ (>0 で攻撃検知 ) DDoSAttackBitsPerSecond DDoSAttackRequestsPerSecond 現在 以下 15 の攻撃種別ごとに確認可能 ACKFlood ChargenReflection DNSReflection GenericUDPReflection MSSQLReflection NetBIOSReflection NTPReflection PortMapper RequestFlood RIPReflection SNMPReflection SSDPReflection SYNFlood UDPFragment UDPTraffic 61
Shield Advanced の Report 機能 :CloudWatch CloudWatch からのアラーム発砲 アラーム設定 お客様の Security Operation Center へ即時通知 対処 or サポートを通じて DRT チームとコンタクト 62
AWS Shield Advanced を利 するまでのステップ IAM ユーザの準備 AdministratorAccess ポリシーをもつグループ / ユーザを準備 AWS Shield Advanced 設定 1: AWS Shield Advanced を有効化 2: AWS リソースに AWS Shield Advanced 保護を追加 以下 運 形態によって確認ください 3: ルールとウェブ ACL を作成する権限を DDoS Response Team (DRT) に付与 4: AWS WAF セキュリティ 動化をデプロイ 63 http://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/authorize-drt.html
AWS Shield Advance 積極的な DRT 関与 1. Always-On モニタリングが DRT を呼び出す 2. DRT が積極的に分類 ( トリアージ ) 3. DRT が AWS WAF ルールを作成 ( 事前承認 設定が必要です ) 64
ルールとウェブ ACL を作成する権限を DRT に付与 マニュアルリンクから遷移するだけで設定可 1. クリック 2. 設定 3. デプロイ http://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/authorize-drt.html DRT のロールとインラインポリシーが作成されます 65
AWS Shield Advanced を利 するまでのステップ IAM ユーザの準備 AdministratorAccess ポリシーをもつグループ / ユーザを準備 AWS Shield Advanced 設定 1: AWS Shield Advanced を有効化 2: AWS リソースに AWS Shield Advanced 保護を追加 以下 運 形態によって確認ください 3: ルールとウェブ ACL を作成する権限を DDoS Response Team (DRT) に付与 4: AWS WAF セキュリティ 動化をデプロイ 66
セキュリティ脅威のタイプ AWS Shield DDoS Application Attacks Bad Bots アプリケーション層 HTTP floods SQL injection Social engineering Sensitive data exposure Application exploits Crawlers Content scrapers Scanners & probes ネットワーク / トランスポート層 Reflection SSL abuse Amplification Slowloris Layer 4 floods 67
AWS WAF セキュリティ 動化をデプロイ 連の AWS WAF ルールを含む事前設定されたテンプレートを 意 (CloudFront/ALB 対象 カスタマイズ可 ) ハニーポット (A): 悪意のあるボット のハニースポット ( カスタム Lambda 関数 +API Gateway エンドポイント ) を作成 疑わしいリクエストを検査 その送信元 IP アドレスを AWS WAF ブロックリストに追加 SQL インジェクション (B) とクロスサイトスクリプト (C) 保護 : 般的な SQL インジェクションやクロスサイトスクリプトパターンから保護する AWS WAF ルールを 動的に設定 ログ解析 (D):CloudFront のアクセスログを 動的に解析 疑わしい動作を特定し 該当する送信元 IP アドレスを AWS WAF ブロックリストに追加する Lambda 関数を作成 動 IP リスト (E): AWS WAF ルールを作成 ブロックまたは許可する IP アドレスを 動で追加可能 IP リスト解析 (F): サードパーティの IP 評価リストを 1 時間ごとに 動的にチェック 悪意のある IP アドレスを AWS WAF ブロックリストに追加する Lambda 関数を作成 68 http://docs.aws.amazon.com/ja_jp/waf/latest/developerguide/deploy-waf-automations.html https://aws.amazon.com/jp/answers/security/aws-waf-security-automations/
AWS WAF セキュリティ 動化をデプロイ 1. クリック 2. 設定 3. デプロイ https://aws.amazon.com/answers/security/aws-waf-security-automations/ Cloudfront ALB のテンプレートが 意済み 69
70 AWS Shield Advanced まとめ
AWS DDoS Shield: 使い分け Standard Protection Advanced Protection 般的な DDoS 攻撃から保護 AWS 上で DDoS に強いアーキテクチャを構築するためのツールとベストプラクティスを提供 規模で洗練された攻撃に対するさらなる防御 攻撃に対する可視性 複雑なケースでの DDoS エキスパートへの 24 時間 365 のアクセスを提供
72 よくある質問
よくある質問 Q. AWS Shield Standard の保護に AWS WAF の有効化は必須ですか? A. いいえ L7 保護が必要な際にご検討ください Q. AWS Shield Advanced を有効化したら即時反映されますか? A. いつでも有効化可能でほぼリアルタイムに反映されます 12 か のコミットメントが必要なので 12 か 間有効です 攻撃を受ける前に有効化することを推奨します Q. AWS Shield Advanced で保護するサービスを選択する必要がありますか? A. 保護対象サービスを選択する必要があります 100 リソース (ELB/ALB, CloudFront ディストリビューション, Route 53 ホストゾーン ) まで可能です 超える場合は上限緩和申請も可能です Q. AWS Shield Advanced ではなぜ 12 か のコミットメントが必要なのですか A. 定の期間トラフィックを監視することで トラフィックパターンを学習し誤検知を防ぐことができます また 効果的なキャパシティ管理やルーティングを可能にするためです Q. AWS Shield Advanced 利 にはどのレベルのサポートが必要ですか? A. Business か Enterprise サポートが必要です 73 https://aws.amazon.com/jp/shield/faqs/
参考情報 AWS Shield https://aws.amazon.com/jp/shield/ AWS Best Practice for DDoS Resiliency (June 2016) https://d0.awsstatic.com/whitepapers/security/dd os_white_paper.pdf Cloud Security Resources https://aws.amazon.com/security/securityresources/ 74
75