ddos vs. dockerコンテナホスティング arukas(container sig meet-up 2016 fall)

Post on 16-Apr-2017

2.213 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Container Hosting vs. DDoS?

ShujiYamada(山田修司)@uzyexeOct7,2016

Run Dockerized Applications

500,000+ Dockerized Applications

1700 Users

4600 Users

900 Users

Today

Arukas Users

Growth

1700 Users

4500 Users

15000+ Users

Apr 2016 Jun 2016 Aug 2016

15000 Users

25 Docker Cluster

20000 Containers

DDoS

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

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

DDoSの種類

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

2. 機材性能の向上

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

DDoSの規模は年々拡大

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

Reflection and Amplification

Attacks

Reflection and Amplification

Attacks

Reflection

Reflection and Amplification

Attacks

AmplificationReflection

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

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

Reflection and Amplification

Attacks

仮にDockerコンテナなら?

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

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

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

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

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

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

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

現実

18

スキャン行為

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

2. 侵入未遂

3. マルウェア感染未遂

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

スキャンの種類

仮にDockerコンテナなら?

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

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

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

• Dockerコンテナなら…

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

より具体的な事例

今年 8月下旬~9月上旬

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

直撃

ヒット

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

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

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

最初の一撃

だが、しかし

Host4Host2

Host1 Host5

Mesos +

Marathon

Host3

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

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

30

コンテナ資源の配置制御

FREE

1 2 3

4 5 6

7 8 9Host Servers Resource Pool

Arukasにおける

障害時の動作(想定)

FREE

1 2 3

4 5 6

7 8 9Host Servers Resource Pool

32

コンテナ資源の配置制御

FREE

1 2 3

4 5 6

7 8 9Host Servers Resource Pool

33

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

1 2 3

4 5 6

7 8 9Host Servers Resource Pool

FREE

ホストC へのDDoS

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

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

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

直収スイッチ

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

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

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

インターネット

上流ルーター

マネージャ

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

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

異常なし!異常なし!

直収スイッチ

インターネット

上流ルーター

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

ホストC へのDDoS

異常なし!

DDoS検知!

<「えっ」<「えっ」

マネージャ

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

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

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

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

36

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

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

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

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

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

37

DDoS対策している間に…

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

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

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

38

攻撃者側にしてみれば…

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

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

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

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

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

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

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

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

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

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

41

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

報復DDoS

報復DDoSふりだしに戻る

まとめ

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

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

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

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

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

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

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

DDoS が直撃したら?

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

アタックの脅威

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

Docker クラスタだと…

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

収容変更はこわくない

(C) Copyright 1996-2016 SAKURA Internet Inc.

top related