DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

51
Container Hosting vs. DDoS? Shuji Yamada ( 山田 修司 ) @uzyexe Oct 7, 2016
  • date post

    16-Apr-2017
  • Category

    Technology

  • view

    2.213
  • download

    2

Transcript of DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

Page 1: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

Container Hosting vs. DDoS?

ShujiYamada(山田修司)@uzyexeOct7,2016

Page 2: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)
Page 3: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

Run Dockerized Applications

500,000+ Dockerized Applications

Page 4: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

1700 Users

4600 Users

900 Users

Today

Arukas Users

Growth

1700 Users

4500 Users

15000+ Users

Apr 2016 Jun 2016 Aug 2016

Page 5: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

15000 Users

25 Docker Cluster

20000 Containers

Page 6: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

DDoS

Page 7: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

1. 過負荷を与える攻撃 (パケットを大量送信するタイプ)

2. 例外処理されない攻撃 (脆弱性を突くタイプ)

DDoSの種類

Page 8: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

1. 放置されるデバイスの増加

2. 機材性能の向上

3. 廉価な DDoSサービス が海外に

DDoSの規模は年々拡大

Page 9: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

リフレクション DDoS (DNS amp, NTP Reflection, SSDP Reflection...)

Page 10: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

Reflection and Amplification

Attacks

Page 11: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

Reflection and Amplification

Attacks

Reflection

Page 12: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

Reflection and Amplification

Attacks

AmplificationReflection

Page 13: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

Request size (リクエストしたサイズ)

Response size (レスポンスされるサイズ)

Page 14: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

Reflection and Amplification

Attacks

Page 15: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

仮にDockerコンテナなら?

Page 16: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

踏み台にはされにくい?• ポート開放するなら、-p 指定必須だし… (-p 53:53 とか -p 123:123 とか…)

• コンテナでDNS鯖は立てないんじゃ? (NTPサーバもコンテナでは動かさない?)

Page 17: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

• DNSサーバのコンテナが存在する。

• NTPサーバのコンテナが存在する。

• 迷ったら、-p 53 -p 123 されてることも多い…。

• NetBIOS ポートまで開けられていることも…

• ポート開放の作法に関する情報が少ない?

現実

Page 18: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

18

スキャン行為

Page 19: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

1. 弱点探索(脆弱性探索)

2. 侵入未遂

3. マルウェア感染未遂

4. ブルートフォース攻撃

スキャンの種類

Page 20: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

仮にDockerコンテナなら?

Page 21: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

アタックされにくい?• 22番ポートを公開するとも限らないし… (--net=host とか -p 22:22 でなければ…)

• 22番ポート以外ならクラックされにくい?

Page 22: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

現実• 何番ポートでもパスワードの強度次第。 (公開鍵認証にしてもらえると助かる…)

• Dockerコンテナなら…

• kill すればクリーンな状態に初期化できるが… (大切な何かは奪われてるかもしれない…)

Page 23: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

より具体的な事例

Page 24: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

今年 8月下旬~9月上旬

国内一部サイトにおいてDDoSが増加

Page 25: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

直撃

ヒット

Page 26: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

• ※ Gbps の DDoS が複数同時に着弾。

• 上流で対象ホスト向け通信が即時遮断。

• 一部ホストで、8時間~48時間の断。

最初の一撃

Page 27: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

だが、しかし

Page 28: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

Host4Host2

Host1 Host5

Mesos +

Marathon

Host3

分散クラスタ構成だから安心!

Page 29: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

� �� �� �∧_∧!�ハッ!�� /‾‾‾‾‾‾‾‾ ����__(� ゜∀゜)_����<�という夢を見たんだ ����|� 〃( つ��つ� |���\________ ����|\⌒⌒⌒⌒⌒⌒\ ����|� \ ^ �⌒� ��⌒ �\ ����\� |⌒ ⌒⌒⌒⌒⌒| ����� \ |.___ ____|

Page 30: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

30

コンテナ資源の配置制御

FREE

1 2 3

4 5 6

7 8 9Host Servers Resource Pool

Arukasにおける

Page 31: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

障害時の動作(想定)

FREE

1 2 3

4 5 6

7 8 9Host Servers Resource Pool

Page 32: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

32

コンテナ資源の配置制御

FREE

1 2 3

4 5 6

7 8 9Host Servers Resource Pool

Page 33: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

33

障害時の動作(上流回線断のとき)

1 2 3

4 5 6

7 8 9Host Servers Resource Pool

FREE

Page 34: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

ホストC へのDDoS

DDoS検知!ホストCとの通信を強制遮断!(隔離)

ホスト Aコンテナコンテナ

ホスト Bコンテナコンテナ

直収スイッチ

ホスト Cコンテナコンテナ

異常なし!異常なし!異常なし!

< 通信不能!< 通信不能!

インターネット

上流ルーター

マネージャ

Page 35: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

ホスト Aコンテナコンテナ

ホスト Bコンテナコンテナ

異常なし!異常なし!

直収スイッチ

インターネット

上流ルーター

ホスト Cコンテナコンテナ

ホストC へのDDoS

異常なし!

DDoS検知!

<「えっ」<「えっ」

マネージャ

ホストCとの通信を強制遮断!(隔離)

Page 36: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

• 外部ネットワーク向け疎通監視が必要。

• 試験対地は?有名なDNS鯖とか政府サイト?

• これが正解か確信はないが、今は不具合なくフェイルオーバー成功できている…。

36

どうしていればよかった?

Page 37: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

• ユーザーのSSHコンテナが複数クラック被害。

• 脆弱なパスワードが設定されているコンテナ。

• 外部に全力でDoSを撃ち始めた。

• 探して kill して初期化して一時しのぎ。

37

DDoS対策している間に…

Page 38: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

• コンテナ収容サーバって絶好の餌場。

• コンテナ詰め込んで開放ポートだらけ。

• 1 IPアドレスあたり数千の開放ポート!

38

攻撃者側にしてみれば…

Page 39: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

• 中身のデータを奪われたり。

• 外部に DoS を撃ち込んだり。

• ご近所さんにスキャンして周ったり。

• 上流でネットワーク回線遮断されたり。

クラックされたらどうなる?

Page 40: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

• 中身のデータを奪われたり。

• 外部に DoS を撃ち込んだり。

• ご近所さんにスキャンして周ったり。

• 上流でネットワーク回線遮断されたり。

クラックされたらどうなる?

Page 41: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

41

外部に DoS を撃ち込むと 何が起きるか?

Page 42: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

報復DDoS

Page 43: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

報復DDoSふりだしに戻る

Page 44: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

まとめ

Page 45: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

• 帯域、パケット流量、コネクション数。 • 意図せぬパケットが漏れていることも… • でも、コンテナの監視は色々悩みが…。

トラフィック監視してますか

Page 46: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

• 手軽に監視開始するには便利。 • だが、コンテナと共にメトリクス数が膨張…。 • メトリクス数の利用上限を超過して警告が…。 • 必要なメトリクスを絞り込む。

監視SaaSによるコンテナ監視

Page 47: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

• 上流回線で全通信遮断されることが多い。(上流で遮断しないと影響が波及する。)

• 数時間~数日間は遮断される。

• 対策はあらかじめ講じておく必要がある。

DDoS が直撃したら?

Page 48: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

• Webサーバなら DDoS には CDN が有効。 • スキャン対策には WAF 導入が有効。 • でも、特効薬になるとも限らない。 • 防御側にかかる負担は大きい。

アタックの脅威

Page 49: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

• 正常ホストへの収容変更が簡単。 • 約5分から30分程度で収容変更可能。 • 数時間~数日間の通信断を避けられる。 • でも、特効薬になるとも限らない。

Docker クラスタだと…

Page 50: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

• コンテナなら移設が比較的簡単。 • 遠隔地へのマイグレーションもやりやすい。 • Arukasは石狩から東京に丸ごと移設した。 • どこにでも簡単に逃げれる、分散できる。

収容変更はこわくない

Page 51: DDoS vs. Dockerコンテナホスティング Arukas(Container SIG Meet-up 2016 Fall)

(C) Copyright 1996-2016 SAKURA Internet Inc.