10月版 あんなコアいいな、吐けたらいいな


上川純一
日本ヒューレット・パッカード株式会社
コンサルティング・インテグレーション統括本部
2007/10/31


セキュリティフレームワークの追加が議論を呼ぶ

 Casey Schauflerが「Smack: Simplified Mandatory Access Control Kernel」を提案しました。8月12日に1回目のパッチを投げ、レビューをし、8月30日に改訂版を出し、9月30日に「[PATCH] Version 3 (2.6.23-rc8) Smack: Simplified Mandatory Access Control Kernel」というタイトルで投稿しました。

 以前お伝えしたように、Linux KernelにはLSM(Linux Security Module)という機構があります。SELinuxなどのセキュリティ機構をカーネルに導入するための仕組みです。SMACK は、LSMを利用したMAC(Mandatory Access Control:強制アクセス制御)の仕組みです。

関連記事:
2006年5月版 「LSM不要論」に揺れるSELinux&AppArmor
http://www.atmarkit.co.jp/flinux/rensai/watch2006/watch05b.html

 Andrew Mortonは、パッチとアイデアは良さそうだし、パッチを見る限りではほかの部分に影響を及ぼすことはなさそうなので、マージしてしまえばよいだろうというコメントを出しました。

 そのコメントに対してSELinuxのメンテナ、James Morrisが「LSMのAPIは現在SELinuxしか使っていないため、まだ削除することが可能だ。しかしながらSMACKをマージすることによってLSMのAPIが固定されてしまうことが弊害だ。マージについてはセキュリティアーキテクチャ全体をふかんして検討する必要がある」とコメントしました。複数のセキュリティ機構の選択肢が存在すること自体が問題で、開発者はセキュリティ機構を無視して開発をすることになってしまうことを危惧(きぐ)しているというのです。

 Linusはこのメールに対して、「Linux Kernelの標準セキュリティモジュールとしてSELinuxが良いというのは決定事項ではない。LSMの意図は選択肢を提供することであり、議論を進めるためにはAppArmorやSMACKをマージする必要があるだろう」と反応しました。

関連記事:
一連の経緯に関するセキュアOS側からの分析については
Linux Kernel Watch番外編:LinusもキレたセキュアOS論争 も参照
http://www.atmarkit.co.jp/fsecurity/special/103kernelwatch/kernelwatch01.html

 最近のLSM関連の話題として、日本からTOMOYO Linuxパッチが再投稿され議論の俎上(そじょう)に載せられるなど、各種の動きが見られます。今後複数の仕組みがマージされ簡単に試せるようになると、セキュリティフレームワークの妥当性についての議論が深まるかもしれませんね。

-stableの進ちょくにも方針の違い

 -stableリリースは9月も更新されていました。Greg K-Hの管理する2.6.22.yツリーは9月に3リリースしていました。

 Adrian Bunkの管理している2.6.16は、9月にはリリースがありませんでした。10月に入って2.6.16.54がリリースされているため、管理が止まっているわけではないようです。

 Willy Tarreauの管理している2.6.20.yツリーについてもメンテナンスされています。ただ、彼の2.6.20.20のリリースノートでは「2.6.22.yのパッチレートも大幅に低くなったので、そろそろ試してもよいころ合いです。まだ試していない人には移行する準備を強く進めます、今後2.6.20.yリリースをたくさん出す予定はありません」という一文が追記されていました。

 いつ新しいリリースにいくべきかというタイミングを明示している点と、パッチの勢いが収まったから2.6.22.yに移行するように勧めている点で、2.6.16.y系列をメンテナンスしているAdrian Bunkとの方針の違いが対照的ですね。

■2.6.20.y: Willy Tarreauの管理

  • 2.6.20.19(9月9日)
    [IPV6]: skb->dstが定義される前に利用していたのをやめる
    以上、1パッチ
  • 2.6.20.20(9月23日)
    ・x86_64:32bitの場合に、ptraceの後に全レジスタをゼロ拡張する(CVE-2007-4573)
    ・CPU時間制限で、setrlimit(RLIMIT_CPU, 0)で無制限にCPUが利用できるようになるのを回避
    以上、2パッチ

■2.6.22.y: Greg K-Hたちが管理

  • 2.6.22.7(9月22日)Chris Wright
    ・x86_64:32bitの場合にptraceの後に全レジスタをゼロ拡張する(CVE-2007-4573)
    以上、1パッチ
  • 2.6.22.8(9月25日)Greg K-H
    ・snd-page-alloc procファイルにseq_fileを利用する(CVE-2007-4571)
    以上、1パッチ
  • 2.6.22.9(9月27日)Greg K-H
    ・2.6.22.2にマージしたforcedethのrealtek phyが間違っていたのを修正するパッチ
    ・ieee1394: ohci1394: モジュールとしてロードされずスタティックリンクされている場合に動作しなかったのを修正
    ・sys_timerfdのユーザーインターフェイスに合意が取れていないので、無効にする。
    ほか、50パッチ

(以上、敬称略)

2/2

Index
Linux Kernel Watch 10月版
 あんなコアいいな、吐けたらいいな
  Page 1
 2.6.23のリリースは遠かった
 「欲しいメモリ領域だけ」、コアダンプのフィルタリング
 コマンドラインの長さ制限を拡大?
Page 2
 セキュリティフレームワークの追加が議論を呼ぶ
 -stableの進ちょくにも方針の違い

連載 Linux Kernel Watch


 Linux Squareフォーラム Linuxカーネル関連記事
連載:Linux Kernel Watch(連載中)
Linuxカーネル開発の現場ではさまざまな提案や議論が交わされています。その中からいくつかのトピックをピックアップしてお伝えします
連載:Linuxファイルシステム技術解説
ファイルシステムにはそれぞれ特性がある。本連載では、基礎技術から各ファイルシステムの特徴、パフォーマンスを検証する
特集:全貌を現したLinuxカーネル2.6[第1章]
エンタープライズ向けに刷新されたカーネル・コア
ついに全貌が明らかになったカーネル2.6。6月に正式リリースされる予定の次期安定版カーネルの改良点や新機能を詳しく解説する
特集:/procによるLinuxチューニング[前編]
/procで理解するOSの状態

Linuxの状態確認や挙動の変更で重要なのが/procファイルシステムである。/procの概念や/procを利用したOSの状態確認方法を解説する
特集:仮想OS「User Mode Linux」活用法
Linux上で仮想的なLinuxを動かすUMLの仕組みからインストール/管理方法やIPv6などに対応させるカーネル構築までを徹底解説
Linuxのカーネルメンテナは柔軟なシステム
カーネルメンテナが語るコミュニティとIA-64 Linux
IA-64 LinuxのカーネルメンテナであるBjorn Helgaas氏。同氏にLinuxカーネルの開発体制などについて伺った

MONOist組み込み開発フォーラムの中から、Linux関連記事を紹介します


Linux & OSS フォーラム 新着記事
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)

注目のテーマ

Linux & OSS 記事ランキング

本日 月間