$30 off During Our Annual Pro Sale. View Details »

コンテナセキュリティってどうなってるの?

 コンテナセキュリティってどうなってるの?

#OSCKYOTO 2019 LTで話した内容です。
コンテナセキュリティに関する議論のきっかけになれば良いと思います。

Satoru MIYAZAKI

August 03, 2019
Tweet

More Decks by Satoru MIYAZAKI

Other Decks in Technology

Transcript

  1. コンテナのセキュリティって
    どうなってるの?
    OSC2019 KYOTO(8/3) LT みやざき さとる

    View Slide

  2. 言うなれば運命共同体
    • コンテナ=アプリケーションコンテナとする
    • いわゆる、Docker、Kubernetes を想定している
    • cgroupとLinux Usernamespaceでリソースを分離
    • コンテナはカーネルを持たない
    • 必要なアプリケーションとライブラリ、
    パッケージを含む

    View Slide

  3. nodeA
    node間
    接続
    TLS
    VxLAN
    互いに頼り、互いに庇い合い、互いに助け合う
    • ノード内のコンテナ同士の通信は
    プライベートなブリッジ
    • ノード間通信は、Docker Swarmでは
    TLS化されている
    • Kubernetesでは、ノード通信を
    VxLAN経由で行われTLS化されている
    • コンテナ外からは限定された
    ポートのみ接続
    nodeB
    front
    Container Container Container
    Container
    Container Container

    View Slide

  4. node
    OS/カーネル
    一人が五人のために、五人が一人のために
    • すべてを非特権ユーザーで動作させる
    • ホスト側でコンテナデーモン動作
    • コンテナ側でアプリケーション動作
    • よりセキュアにプロセスを動作させる
    コンテナデーモン
    非特権ユーザ
    アプリケーション
    非特権ユーザ
    アプリケーション
    非特権ユーザ
    コンテナ

    View Slide

  5. だからこそ戦場で生きられる
    • コンテナはイメージで配布
    • イメージはレイヤ構造
    • イメージ作成時に脆弱性スキャンが可能
    • Wazuh
    • Vuls
    • Gitlab(Clair)
    • trivy
    • etc…
    Container
    Application Layer
    Middleware Layer
    Base OS Layer

    View Slide

  6. 分隊は家族、分隊は兄弟
    • コンテナ内に余計なものがない
    • ネットワークは分離・暗号化されている
    • コンテナ及びアプリケーションを
    非特権ユーザで動作
    • コンテナイメージは脆弱性スキャンしている
    • だからコンテナはセキュア?

    View Slide

  7. 嘘を言うな!

    View Slide

  8. 猜疑に歪んだ暗い瞳がせせら笑う
    • 日々、脆弱性は発見される
    • ベースOS/ライブラリ/アプリケーション/
    パッケージ(pip/gem/npm…)の更新
    • ゼロデイ攻撃、マルウェアによる被害
    • 長期稼働時での意図しない動作

    View Slide

  9. 無能、怯懦、虚偽、杜撰
    • 定期的に実施
    • アプリケーションの動作確認
    • イメージの更新
    • イメージの脆弱性確認
    • 不正な動作を検知

    View Slide

  10. どれ一つ取っても戦場では命取りとなる。
    • 定期的に脆弱性スキャンを行わないと
    実サービスに影響が発生
    • コンテナのランタイム検知を行うOSSは少ない
    Wazuh、falcoなどなど
    • 不正なファイル更新
    • 不正な動作
    • 不正な通信
    • 脆弱性の検知

    View Slide

  11. それらを纏めて無謀で括る
    • 事前にセキュリティ計画を立てる
    • イメージの更新タイミング
    • コンテナの寿命
    • コンテナデプロイの容易さ
    • 外側からのアプリケーション動作の確認
    • 不正通信の検知
    • etc…

    View Slide

  12. 誰が仕組んだ地獄やら、兄弟家族が嗤わせる
    • 定期的に以下の処理実行する仕組みが必要
    • イメージ再作成
    • イメージ検査
    • アプリケーション動作確認
    • デプロイ
    • コンテナの寿命を短くする
    • すべてを手動で行うとツライので、
    ある程度は自動化

    View Slide

  13. お前も、お前も、お前も
    • 一貫した開発・セキュリティ・運用が必要
    • Development
    • どの言語、ライブラリで作成するか
    • アプリケーションの静的解析
    • 脆弱性に対するアプリケーション確認
    • Security
    • セキュリティ基準の策定
    • DevとOpsに対するセキュリティ対策支援
    • Operations
    • イメージアップデート、コンテナデプロイ
    • 監視

    View Slide

  14. だからこそ、俺のために死ね!
    • セキュリティ施策が立てられないなら
    お金の力で解決する!
    • セキュリティに強い人を雇う
    • コンテナセキュリティ製品の導入
    • AQUA Cloudnaitive Security Platform
    • NeuVector
    • sysdig platform/monitor/secure
    • Tufin Iris/Orca
    • twistlock
    • etc…

    View Slide

  15. 我々は何のために集められたのか
    次回「未定」

    View Slide