CKS 試験問題 11
シミュレーション
指定された Dockerfile を分析して編集します
ubuntuから:最新
apt-get update -y を実行します
apt-install nginx -y を実行します
エントリポイント.sh /をコピーします
エントリーポイント ["/entrypoint.sh"]
ユーザールート
顕著なセキュリティのベスト プラクティスの問題であるファイルに存在する 2 つの命令を修正します。 デプロイメント マニフェスト ファイルを分析して編集します。 apiVersion: v1 kind: Pod metadata:
名前: セキュリティコンテキストデモ-2
仕様:
セキュリティコンテキスト:
実行ユーザー: 1000
コンテナ:
- 名前: sec-ctx-demo-2
画像: gcr.io/google-samples/node-hello:1.0
セキュリティコンテキスト:
ユーザーとして実行: 0
特権: True
allowPrivilegeEscalation: false
ファイル内に存在する 2 つのフィールドを修正することは、重要なセキュリティのベスト プラクティスの問題です。構成設定を追加または削除しないでください。既存の構成設定のみを変更します。いずれかのタスクに特権のないユーザーが必要な場合は、ユーザー ID 5487 のユーザー test-user を使用します。
指定された Dockerfile を分析して編集します
ubuntuから:最新
apt-get update -y を実行します
apt-install nginx -y を実行します
エントリポイント.sh /をコピーします
エントリーポイント ["/entrypoint.sh"]
ユーザールート
顕著なセキュリティのベスト プラクティスの問題であるファイルに存在する 2 つの命令を修正します。 デプロイメント マニフェスト ファイルを分析して編集します。 apiVersion: v1 kind: Pod metadata:
名前: セキュリティコンテキストデモ-2
仕様:
セキュリティコンテキスト:
実行ユーザー: 1000
コンテナ:
- 名前: sec-ctx-demo-2
画像: gcr.io/google-samples/node-hello:1.0
セキュリティコンテキスト:
ユーザーとして実行: 0
特権: True
allowPrivilegeEscalation: false
ファイル内に存在する 2 つのフィールドを修正することは、重要なセキュリティのベスト プラクティスの問題です。構成設定を追加または削除しないでください。既存の構成設定のみを変更します。いずれかのタスクに特権のないユーザーが必要な場合は、ユーザー ID 5487 のユーザー test-user を使用します。
CKS 試験問題 12
ランタイム検出ツール Falco を使用し、Nginx の単一コンテナー内で新たに生成および実行されているプロセスを検出するフィルターを使用して、コンテナーの動作を少なくとも 20 秒間分析します。
検出されたインシデントを含むインシデント ファイル アート /opt/falco-incident.txt を保存します。形式で 1 行に 1 つずつ
[タイムスタンプ]、[uid]、[プロセス名]
検出されたインシデントを含むインシデント ファイル アート /opt/falco-incident.txt を保存します。形式で 1 行に 1 つずつ
[タイムスタンプ]、[uid]、[プロセス名]
CKS 試験問題 13
シミュレーション
Trivy を使用して次の画像をスキャンします。
1.アマゾンLinux:1
2. k8s.gcr.io/kube-controller-manager:v1.18.6
重大度「HIGH」または「CRITICAL」の脆弱性を持つイメージを探し、その出力を /opt/trivy-vulnerable.txt に保存します。
Trivy を使用して次の画像をスキャンします。
1.アマゾンLinux:1
2. k8s.gcr.io/kube-controller-manager:v1.18.6
重大度「HIGH」または「CRITICAL」の脆弱性を持つイメージを探し、その出力を /opt/trivy-vulnerable.txt に保存します。
CKS 試験問題 14
シミュレーション
構成を通じてすべての問題を修正し、影響を受けるコンポーネントを再起動して、新しい設定が確実に有効になるようにします。
API サーバーに対して見つかった次の違反をすべて修正します。RotateKubeletServerCertificate 引数が true に設定されていることを確認します。
b. アドミッション コントロール プラグイン PodSecurityPolicy が設定されていることを確認します。
c. --kubelet-certificate-authority 引数が適切に設定されていることを確認してください。
Kubelet に対して見つかった次の違反をすべて修正します。--anonymous-auth 引数が false に設定されていることを確認します。
b. --authorization-mode 引数が Webhook に設定されていることを確認します。
ETCD に対して見つかった次の違反をすべて修正します。-
a.--auto-tls 引数が true に設定されていないことを確認してください。
b. --peer-auto-tls 引数が true に設定されていないことを確認してください
ヒント: ツール Kube-Bench を使用してください。
構成を通じてすべての問題を修正し、影響を受けるコンポーネントを再起動して、新しい設定が確実に有効になるようにします。
API サーバーに対して見つかった次の違反をすべて修正します。RotateKubeletServerCertificate 引数が true に設定されていることを確認します。
b. アドミッション コントロール プラグイン PodSecurityPolicy が設定されていることを確認します。
c. --kubelet-certificate-authority 引数が適切に設定されていることを確認してください。
Kubelet に対して見つかった次の違反をすべて修正します。--anonymous-auth 引数が false に設定されていることを確認します。
b. --authorization-mode 引数が Webhook に設定されていることを確認します。
ETCD に対して見つかった次の違反をすべて修正します。-
a.--auto-tls 引数が true に設定されていないことを確認してください。
b. --peer-auto-tls 引数が true に設定されていないことを確認してください
ヒント: ツール Kube-Bench を使用してください。
CKS 試験問題 15
シミュレーション
既存の名前空間のデフォルトに backend-sa という名前の新しい ServiceAccount を作成します。これには、名前空間のデフォルト内のポッドを一覧表示する機能があります。
名前空間のデフォルトに backend-pod という名前の新しいポッドを作成し、新しく作成した sa backend-sa をポッドにマウントし、ポッドがポッドを一覧表示できることを確認します。
ポッドが実行されていることを確認します。
既存の名前空間のデフォルトに backend-sa という名前の新しい ServiceAccount を作成します。これには、名前空間のデフォルト内のポッドを一覧表示する機能があります。
名前空間のデフォルトに backend-pod という名前の新しいポッドを作成し、新しく作成した sa backend-sa をポッドにマウントし、ポッドがポッドを一覧表示できることを確認します。
ポッドが実行されていることを確認します。
