パスワードを忘れた? アカウント作成
8003 story

2.4.22-2.4.25/2.6.1-2.6.3にroot権限奪取可能な脆弱性 45

ストーリー by Oliver
メモリ管理は厳密に 部門より

Henrich 曰く、 "Debian-devel-announce メーリングリストに流されたメールによって知ったのだが、linux kernelに脆弱性がまた見つかっている。この脆弱性の対象となるバージョンは2.4系が2.4.22-2.4.25、2.6系が2.6.1-2.6.3。最新版は影響を受けない。 この脆弱性を発見したiSECのアドバイザリによると「2.4.22及び2.6.1で取り入れられたsetsockoptシステムコールの MCAST_MSFILTERオプションに欠陥があり、オーバーフローを起こす可能性がある。これによってローカルユーザがroot権限を奪うことが可能になり、権限を奪えなくともDoSとなってサーバの停止や再起動を起こせる」という話だ。"

処理に必要なメモリ割り当て量を計算する時にInteger Overflowを発生させることにより、後に割り当てられたメモリの範囲外を上書きできてしまう、というバグだ。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • 2.4.25 (スコア:2, おもしろおかしい)

    by Anonymous Coward on 2004年04月21日 18時56分 (#535904)
    カーネルコンパイル中にこれを見つけた・・・orz
  • by Henrich (121) on 2004年04月21日 19時10分 (#535911)

    Paul Starzetz (ihaquer@isec.pl) discovered the vulnerability over half a year ago.


    うーむ。

  • 2.4系ですが (スコア:2, 参考になる)

    by one-one (17888) on 2004年04月21日 19時23分 (#535917) 日記

    2.4.26には他にもここで話題になった [srad.jp]分の対策もありますね.
    一応参考までに ITmediaの記事 [itmedia.co.jp]です.

    何にしても早めにバージョンアップしておいた方がよさそうです.

  • by oddmake (1445) on 2004年04月21日 22時50分 (#536000) 日記
    あらゆるコマンドをroot権限で実行できるようにしてある私は駄目駄目ですかそうですか。

    # Windoze感覚なユーザなのでID
    --
    /.configure;oddmake;oddmake install
    • by route99 (7593) on 2004年04月21日 23時20分 (#536009) 日記
      sudoで必要に応じてroot権限をつけて実行できるようにしておくのと、すべてをAdministrator権限で動かすのとではえらい違いだと思いますよ。
      親コメント
      • by Anonymous Coward
        用もないのにAdmin権限でログオンしていること自体が間違いかと。

        #用もないのにroot権限で動かしているのと何も変わらん。
        • Re:sudoで (スコア:1, すばらしい洞察)

          by Anonymous Coward on 2004年04月22日 2時27分 (#536101)
          > 用もないのにAdmin権限でログオンしていること自体が間違いかと。

          WindowsUpdateをやるにはAdministrator権限が必要だよね。
          親コメント
          • by mishima (737) on 2004年04月23日 10時28分 (#536893) ホームページ 日記
            wupdmgr.exe のみを Administrator 権限で動作させれば、
            Administrator でログオンしなくてもできるよ。
            俺はいつもそれで Windows Update やってる。

            ログオンしないとできないこと/不便なことって、結構限られているような。
            --
            # mishimaは本田透先生を熱烈に応援しています
            親コメント
        • by route99 (7593) on 2004年04月22日 2時43分 (#536105) 日記
          > 用もないのにAdmin権限でログオンしていること自体が間違いかと。

          この文章は飛躍しすぎでないかい。

          元コメントを受けて、「sudo 経由で何でもできる設定にする」のと、「ユーザーそのものにスーパーユーザー権限を持たせて何でもできるようにする」のとが、単に「違うよ」と書いただけなんだけどねぇ。
          親コメント
          • by oku (4610) on 2004年04月22日 10時54分 (#536239) 日記
            ええと、以下のような解説でいいのかな。
            • sudo 経由で何でもできる設定にする
              → コマンドを root 権限で起動することはできるが、コマンド経由しない限り、root 権限がないと実行できないシステムコール (ex. iopl) は実行できない
            • ユーザーそのものにスーパーユーザー権限を持たせて何でもできるようにする
              → コマンドを経由しなくてもスーパーユーザとして振舞える

            まあ、「コマンド」に「sh」とか「su」とかが含まれてれば別ですが。

            # まさかそんな事はしてないですよねえ? > oddmake 氏 [srad.jp]

            親コメント
    • by parsley (5772) on 2004年04月21日 23時44分 (#536021) 日記
      root権限で実行できないコマンドを用意してある人、手をあげて~

      # やぼ
      ## ブラウザ系とか、ありそうですね
      --
      Copyright (c) 2001-2014 Parsley, All rights reserved.
      親コメント
      • by Anonymous Coward
        sudoでしかroot権限使わなくてrootのパスワード忘れた人、手をあげて~
        • by Anonymous Coward
          root以外のシェルアカウントがないマシン持ってる人、手をあげて~
  • by Anonymous Coward on 2004年04月21日 20時45分 (#535944)
    最近integer overflowネタが多い気がするけど
    ヤバそうな所を自動検出するツールとか作れないかな。
    • Re:integer overflow (スコア:2, おもしろおかしい)

      by SteppingWind (2654) on 2004年04月21日 21時15分 (#535962)

      64bitアドレスになればoverflowするほどメモリは積めないので大丈夫!

      # ウソ度1000%なのでID

      親コメント
      • by Anonymous Coward
        と20年前の人は考えてたんだって…。
        • by SteppingWind (2654) on 2004年04月22日 11時32分 (#536273)

          ちょっとマジレスですが, いくら20年前の人でも32bitじゃあすぐに足りなくなるのは見えていましたよ. その時点で例えば画像処理や数値計算用途では20bit(i8086, Z8000)では全く役立たず, 24bit(mc68000, ns32016)でなんとかという状態でしたから. 余裕は8bit分, 容量で256倍になれば終わりです.

          今回の32bitアドレスから64bitアドレスへの変更はbit数で見れば2倍になったにすぎませんが, 容量で見れば40億倍. ムーアの法則の様な対数的容量増加が続いたと仮定しても, 32bitCPUが主流になってから今までの時間の3~4倍はもつ計算になります.

          ただ今度は富豪的メモリ空間割り当て手法とかを使って, 実メモリとは関係無しにアドレスを食いつぶすなんてこともあり得ますけどね.

          親コメント
          • by Anonymous Coward

            メモリは手元にあるとは限らないし、アドレスはメモリ上のデータを指すとも限らないですからね。

            ネットワーク上の他ノードのメモリ空間や、ファイル等のリソースを全てメモリ空間にマップするって話も新しいものじゃないし。 (10年以上前ですが、当時は64bitあれば何とかなるんじゃないって話だったかな)。

    • バファーオーバーフロー系の防御なら、
      libsafe [avayalabs.com]とかがお勧めです。自動検出ツールは
      知らないですけど。
      --
      romfffromのコメント設定
      AC-2、プラスモデ+3、閾値0、スコアを表示しない(推奨)、高い評価のコメントを親にする
      親コメント
      • libsafe(off topic) (スコア:2, 参考になる)

        by yanagi (6075) on 2004年04月21日 23時40分 (#536017) ホームページ 日記
        お薦めというか、他に簡単な選択肢がない...
        ちなみにlibcをstaticリンクしている
        バイナリにlibsafeは効きません。
        BSDは先日 /binをdynamicリンクしました [srad.jp]が、
        Linuxはふつうはしていないのでスタティックリンクしている
        /bin /sbin に関数のバグには注意....

        あ、libparanoiaもあったか。あれってどうなってるのかな...
        --
        やなぎ
        字面じゃなく論旨を読もう。モデレートはそれからだ
        親コメント
        • Re:libsafe(off topic) (スコア:3, 参考になる)

          by uni (661) on 2004年04月22日 0時17分 (#536049)

          あれ? Linux はかなり昔から /bin /sbin ともにダイナミックリンクだったはずですよ。覚えているのは slackware 3.1 の頃からですが。
          # むしろこの事で、 *BSD 使いの人に「キモい」と言われていました(笑)

          以下 debian sid の結果。 2 つとも意図的にスタティックリンクしたものですね
          % file /{bin,sbin}/* | grep statically
          /bin/sash: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.0, statically linked, stripped
          /sbin/ldconfig: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.0, statically linked, stripped

          親コメント
      • by Anonymous Coward
        なんでbuffer overflowの話になってるのかよく分からんのですけど、libsafeってinteger overflowも防げるってことなんですか? 普通は、inter overflowといえば SafeInt [microsoft.com] かと。
        • Re:integer overflow (スコア:2, 参考になる)

          libsafeはインテガーオーバーフローを
          防ぐことはしないけど、インテガーオーバーフローが
          原因でおこるバファーオーバーフローを防ぐことが
          できます。
          #今回の件で言えば、カーネルのバファーオーバフローを
          #防ぐ事ができます。
          インテガーオーバーフローが原因の脆弱性は
          多くの場合それが、バファーオーバーフローを
          起こさせててコードを走らせているように思うので、
          結果的には多くのインテガーオーバーフローが原因の
          脆弱性にも有効な対策のように私は思います。

          SafeintはC++ソースがあって、自分でコンパイルして
          走らせる場合には大変良いと思います。

          #Pingをピングと書く人間なので読みにくかったら
          #ゴメソ
          --
          romfffromのコメント設定
          AC-2、プラスモデ+3、閾値0、スコアを表示しない(推奨)、高い評価のコメントを親にする
          親コメント
          • という事 [srad.jp]らしいので、libcをスタティックリンクしていると
            だめらしいです。ちなみに、私はカーネルが
            Cでかかれているのかさえ知らないダメポなので、
            今回の脆弱性をlibsafeで防げるのか知りません。
            カーネルなんだから、リンクとかは利用しないような
            気がするので、libsafeがlibcをダイナミックで
            利用してるプログラム用だとカーネルの
            バッファオーバーフローは防げないですね。
            --
            romfffromのコメント設定
            AC-2、プラスモデ+3、閾値0、スコアを表示しない(推奨)、高い評価のコメントを親にする
            親コメント
    • by Anonymous Coward
      あったらワル者が悪行三昧…?
typodupeerror

私は悩みをリストアップし始めたが、そのあまりの長さにいやけがさし、何も考えないことにした。-- Robert C. Pike

読み込み中...