bobuhiro11's diary

LSMについて調べてみた.(続き)

05 Jul 2013
[LSM] [続き]

一つ前のエントリで動かなかったサンプルが,動くようになりました.カーネルパニックが起こっていたので,static int __init bobulsm_init(void)を中心に調べて行きました.

結局,security_module_enable()を呼び出していなかったのが原因でした.初期化の段階で既に読み込まれているかチェックするために,register_security(&bobulsm_ops)の前に呼び出さなければならないようです.

カーネルパラメータにsecurity=bobulsmを追加する(grepの設定ファイルを修正,または起動時にshift押しっぱなし)と正しく動きました.mkdirが呼ばれる度に,メッセージが増えていく様子が確認出来ました.

$ dmesg | grep bobulsm
[    0.000000] Kernel command line: BOOT_IMAGE=/boot/vmlinuz-3.8.8 root=UUID=b5af552c-3516-48dc-8175-b7ce91be3e60 ro crashkernel=384M-2G:64M,2G-:128M security=bobulsm
[    0.004045] bobulsm: registered surely.
[    0.170644] bobulsm: inode_mkdir called.
[    0.170664] bobulsm: inode_mkdir called.
[    0.170997] bobulsm: inode_mkdir called.

参考: https://www.kernel.org/doc/htmldocs/kernel-api/API-security-module-enable.html


comments powered by Disqus < LSMについて調べてみた. セキュリティ・キャンプ2013 >