AppArmor
AppArmor とは何ですか?
AppArmorLinux 向けのパスベース強制アクセス制御システム。Ubuntu と SUSE が個別プログラムを制限するため、SELinux のより簡素な代替として採用している。
AppArmor は Linux Security Module の一つで、SELinux のような inode ラベルではなく、ファイルパス・capability・ネットワークプリミティブで表現されるプログラム単位のプロファイルにより強制アクセス制御を行います。起源は Immunix で、SUSE と Canonical が保守し、Ubuntu と openSUSE では 2000 年代後半から既定の MAC フレームワークです。プロファイルは /etc/apparmor.d に置かれ、Enforce モードと Complain モードで読み込め、aa-genprof、aa-logprof、aa-easyprof などの補助ツールがあります。パスベース設計は SELinux ポリシーよりも書きやすく監査もしやすい一方、リネーム、bind mount、chroot に対する意味論はやや弱くなります。AppArmor は snapd、libvirt、LXD、Firefox など多くの配布パッケージで用いられています。
● 例
- 01
Ubuntu は Firefox、MySQL、Evince の AppArmor プロファイルを既定で提供する。
- 02
snapd は AppArmor(と seccomp)を用いて各 snap パッケージを隔離する。
● よくある質問
AppArmor とは何ですか?
Linux 向けのパスベース強制アクセス制御システム。Ubuntu と SUSE が個別プログラムを制限するため、SELinux のより簡素な代替として採用している。 サイバーセキュリティの 暗号 カテゴリに属します。
AppArmor とはどういう意味ですか?
Linux 向けのパスベース強制アクセス制御システム。Ubuntu と SUSE が個別プログラムを制限するため、SELinux のより簡素な代替として採用している。
AppArmor はどのように機能しますか?
AppArmor は Linux Security Module の一つで、SELinux のような inode ラベルではなく、ファイルパス・capability・ネットワークプリミティブで表現されるプログラム単位のプロファイルにより強制アクセス制御を行います。起源は Immunix で、SUSE と Canonical が保守し、Ubuntu と openSUSE では 2000 年代後半から既定の MAC フレームワークです。プロファイルは /etc/apparmor.d に置かれ、Enforce モードと Complain モードで読み込め、aa-genprof、aa-logprof、aa-easyprof などの補助ツールがあります。パスベース設計は SELinux ポリシーよりも書きやすく監査もしやすい一方、リネーム、bind mount、chroot に対する意味論はやや弱くなります。AppArmor は snapd、libvirt、LXD、Firefox など多くの配布パッケージで用いられています。
AppArmor からどのように防御しますか?
AppArmor に対する防御は通常、上記の定義で述べたとおり、技術的統制と運用上の実践を組み合わせます。
AppArmor の別名は何ですか?
一般的な別名: AA。
● 関連用語
- cryptography№ 1006
SELinux
米国家安全保障局(NSA)が開発した Linux 用強制アクセス制御フレームワーク。LSM フックとタイプ強制ポリシーで実装される。
- cryptography№ 979
seccomp
プロセスが発行できるシステムコールを制限する Linux カーネル機能。最新の seccomp-BPF/eBPF モードでは syscall ごとの細粒度フィルタが可能。
- identity-access№ 652
強制アクセス制御(MAC)
リソース所有者ではなく中央のポリシーが、主体と客体に付与された機密区分やクリアランスに基づいてアクセスを強制するモデル。
- cloud-security№ 213
コンテナセキュリティ
コンテナイメージ・レジストリ・オーケストレーター、およびコンテナが実行されるランタイムを保護する一連の実践。
● 関連項目
- № 120BPF LSM