LinuCレベル3 セキュリティスペシャリスト アクセスおよび権限制御の強化 問36
アクセスおよび権限制御の強化/AppArmor による強制アクセス制御Ubuntu 24.04で、プロファイル /etc/apparmor.d/usr.sbin.myapp を完全に無効化し、再起動後も無効のままにしたい。AppArmorの標準的な手順として適切なものはどれか。
当サイトのオリジナル問題(LinuCレベル3 セキュリティスペシャリストの出題範囲「アクセスおよび権限制御の強化」に対応。実際の試験問題ではありません)
- Aapparmor_parser -R /etc/apparmor.d/usr.sbin.myapp だけ実行する
- Baa-disable /usr/sbin/myapp を実行する
- Caa-complain /usr/sbin/myapp を実行する
- Drm /etc/apparmor.d/usr.sbin.myapp を実行する
正解:B
解説
`aa-disable` は、/etc/apparmor.d/disable/ 以下に /dev/null へのシンボリックリンクを作成してプロファイルを永続的に無効化し、同時にカーネルからプロファイルを削除(アンロード)します。apparmor_parser -R だけではカーネルから削除されますが、/etc/apparmor.d/disable/ へのリンクがないため再起動後にプロファイルが再読み込みされます。`aa-complain` は制限を外すのではなく complain モードに切り替えるだけです。プロファイルファイルを削除することは再現・修正が困難になるため推奨されません。
選択肢ごとの解説
- A誤り。apparmor_parser -R は現在の実行中カーネルからプロファイルをアンロードするが、/etc/apparmor.d/disable/ にリンクを作らないため再起動後にプロファイルが再度読み込まれる。永続的な無効化には aa-disable が必要である。
- B正しい。aa-disable は /etc/apparmor.d/disable/<プロファイル名> → /dev/null のシンボリックリンクを作成し、カーネルからもアンロードする。再起動後も無効のままになる AppArmor 標準の手順である。
- C誤り。aa-complain は制限を外すのではなく、プロファイルを complain モード(拒否せずにログだけ記録するモード)に切り替える。制限は残ったままである。
- D誤り。プロファイルファイルを削除するとプロファイル定義が失われ、後から再有効化したい場合に再作成が必要になる。標準的な無効化手順は aa-disable を使う方法である。