サイバー攻撃と防御の実務
クラウドの上で動くバッチの処理に、すべての操作を許可した管理者の権限のアクセスキー(長期間有効な認証情報)を、設定ファイルに書いて渡していた。このキーが漏えいしたときの被害を小さくするための見直しとして、最も適切なものはどれか。
- Aアクセスキーの文字列をより長いものに替えて攻撃者に推測されにくくし、権限は今のまま変えずに使い続ける
- B処理に必要な操作と対象だけを許可したロールを割り当て、実行環境から自動で発行される、短時間だけ有効な認証情報を使う
- Cアクセスキーを設定ファイルからプログラムのソースコードの中に移し、ソースコードと一緒にリポジトリで管理して共有する
答えと解説を見る
正解:B. 処理に必要な操作と対象だけを許可したロールを割り当て、実行環境から自動で発行される、短時間だけ有効な認証情報を使う
すべての操作を許可した長期間有効なキーが漏えいすると、攻撃者はアカウントの中のあらゆる資源を読み出したり、削除したり、新しい資源を作って悪用したりできるので、被害が最も大きくなります。最小権限の原則に沿って、処理に必要な操作と対象だけを許可したロールを割り当て、仮想マシンやコンテナに結び付けたロールから、数時間などで失効する一時的な認証情報を自動で受け取る方式にすると、キーを保存しておく必要もなくなります。あわせて、使われていない権限を定期的に見直し、ふだんと違う操作の呼び出しを監視します。
- A. キーの長さは推測されにくさの問題で、漏えいしたときの被害の大きさは変わりません。
- B. 正しい。権限を絞り、短時間で失効する認証情報にすることで、漏えいしたときの被害を小さくします。
- C. ソースコードに書くと、リポジトリを通じて漏えいしやすくなり、かえって危険です。