Tetsuo Handa
from-****@I-lov*****
2017年 4月 25日 (火) 22:48:33 JST
熊猫です。 まもなく Linux 4.11 がリリースされるので、 Linux 4.11 用のパッチを含む 最新版をアップロードしました。 ccs-patch-1.8.5-20170417.tar.gz MD5:0000b9a678f7c99fb49f71ae3b97b22e akari-1.0.36-20170417.tar.gz MD5:eeee0d421b518d2c939e4406934cdf59 caitsith-patch-0.2-20170417.tar.gz MD5:5555ac47eec6e2b93c54ecccb9971846 Tetsuo Handa さんは書きました: > LSM フックとして使用する struct security_hook_list の配列についても > 初期化処理の終了後に read only 属性を付与するという提案が行われているため、 > AKARI のように LSM フックに割り込むタイプのモジュールをロードすることが > 難しくなる可能性があります。 この修正は 4.12-rc1 に組み込まれると予想しています。そのため、 CONFIG_SECURITY_WRITABLE_HOOKS=y が含まれていないカーネルでは、起動時に rodata=0 という指定をしないと LSM フックに割り込むタイプのモジュールを ロードできなくなります。 read only 属性が付与されたメモリを一時的に read write にしたり、あるいは、 read only 属性が付与されたメモリにアクセスしても例外が発生しないようにしたり するためのアーキテクチャ依存な抜け道も存在するようですが、上記のファイルには 含まれていません。 > > ウイルス対策ソフトがリアルタイムスキャンのために使用するカーネル > モジュールにも LSM フックに割り込む方法を使っているものが存在するため、 > 影響を受ける可能性があります。なお、 LSM フレームワークとしては、(いくつか > 未解決の制約はありますが)既に複数のモジュールを登録できるようになっているため、 > メインラインにマージできるように修正して提案することは歓迎される > ( http://www.openwall.com/lists/kernel-hardening/2017/02/17/15 )ようです。 ということで、LSMの話が旬なので、今年のセキュリティ・キャンプ全国大会では、 LSMフックとウイルス対策ソフトの組み合わせに挑戦する ( http://www.ipa.go.jp/jinzai/camp/2017/zenkoku2017_kougi.html#trkd6 )ことに しました。・・・とは言っても、3年間のトラブルシューティングと、その後2年間の メモリ管理を巡る戦いにより、LSMの動向を5年間全然追いかけていなかったため、 紺屋の白袴状態ではありますが。(汗) > > 他には、 Linux 2.6.29 で削除されてしまった security_task_alloc() フックが、 > struct cred 単位ではなく struct task_struct 単位でコンテキストを管理したい > ptags や Timgad が提案されたことにより、10年ぶりに復活しそうな状況です。 > struct task_struct 単位で管理を行うことから名付けられた TOMOYO にとって、 > 名が体を表すようになります。 ;-) この修正についても 4.12-rc1 に組み込まれると予想しており、上記のファイルに 含まれる Linux 4.12 用のパッチでは security_task_alloc() フックを使うように しています。