- Docker/Kubernetes開発・運用のためのセキュリティ実践ガイド
- Container Security: Fundamental Technology Concepts That Protect Containerized Applications
- NIST SP 800-190 application container security guide
- CIS Benchmarks
- Container Security Book
- HackTricks
コンテナ セキュリティに関する参考資料の紹介です。
Docker/Kubernetes開発・運用のためのセキュリティ実践ガイド
Moby(dockerd)、Buildkit(イメージビルダ)、containerd(高レベルランタイム)のコミッタを務められておられるNTTの方などが著者の書籍です。
DockerとKubernetesを中心にコンテナを使った開発・運用する際の対策がまとまっていて、安全なコンテナシステムを構築したいという方にはおススメです。参考URLも多数記載されているので、詳しいことを知りたい方への入り口も用意されています。
コンテナを利用した開発・運用のセキュリティに特化しているため、Docker、Kubernetes、セキュリティ、コンテナの仕組みまでを手取り足取りというわけではありません。なんらかの事前知識があった方が読みやすいと思います。いずれにせよ、日本語でコンテナセキュリティを学べる貴重な一冊です。
コンテナが動作する仕組みを最低限理解して、とりあえずこの方法で開発・運用をしておけばいいという「コンテナのセキュリティテクニック」を学びたい方は、「Docker/Kubernetes開発・運用のためのセキュリティ実践ガイド」がおすすめです。
顧客相手にコンテナシステムを納品するようなSIerやソフトウェアベンダの方が適しているのではないでしょうか。
Container Security: Fundamental Technology Concepts That Protect Containerized Applications
洋書になりますが、コンテナセキュリティの要素技術が整理された良書だと思います。
先ほど紹介した書籍は、 コンテナシステムの開発・運用に重点が置かれていたのに対して、本書籍は、コンテナで使われている要素技術(namespace,file permission,capability,OCIイメージなど)が例を交えながら丁寧に解説されています。そのため、コンテナがどんな仕組みで動作していて、どうセキュアなのか、また、どのように扱うべきなのかを学ぶことができます。コンテナセキュリティのWhyに力強く応えてくれるくれる一冊です。(たぶん)
コンテナの仕組みを理解する「コンテナのセキュリティエンジニアリング」を学びたい方は、「Container Security: Fundamental Technology Concepts That Protect Containerized Applications」がおすすめです。
コンテナ技術を理解したい方や研究レベルの知識を求める方にはおススメだと思います。
NIST SP 800-190 application container security guide
米国国立標準技術研究所(NIST)が発行するSP800シリーズのコンテナ版です。
SP800は世界で通用する大正義規格ですので、準拠がコンテナセキュリティの指標のひとつになっています。コンテナセキュリティベンダであればほぼ間違いなくサポートしている規格のため、一読する価値はあるかと思います。
内容としては、コンテナの使用に関連する潜在的なセキュリティ上の懸念事項を説明し、懸念事項に対処するための推奨事項を提供されています。ただ、概念的な粒度で解説されているので、実装レベルの内容は記載されていません。いざ読んでみると考え方は分かるがどう実装すればいいのかいまいち分からない、というゴールにたどりつくかと思います。
こちらは、2020年にIPAが翻訳版を発行しているので、英語ガバガバの同志の方も安心して読むことができます。
CIS Benchmarks
CIS Benchmarksは、米国のCIS(Center For Internet Security)が発行している安全なシステムを構成するためのベストプラクティスガイドラインです。
コンテナ系列としては、CIS Docker BenchmarkやCIS Kubernetes Benchmarkがあります。NIST SP 800-190と違い、実装レベルの対策まで記載されているので、理解や実践がしやすいと思います。コンテナセキュリティベンダからは、構築したシステムが項目を満たしているかどうか確認するコンプライアンスチェックなどが提供されています。
こちらは、ダウンロードにアカウント登録が必要です。
Container Security Book
コンテナセキュリティセキュリティの項目がよくまとまっている文書です。コンテナブレイクアウトの例まで紹介されていてとても勉強になります。脆弱なコンテナが具体的にどのような脅威にさらされるのかまで学びたい人は必見です。ペネトレーションテストレベルになるとこれぐらいのスキルが求められるのではないでしょうか。
HackTricks
ペネトレーションテストの参考サイトです。関連リンクも豊富で対象がwindowsからlinuxまで幅広いので勉強になります。containerdの基本コマンドやホストOSからコンテナを悪用するテクニックなども書かれています。