パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

2.4.22-2.4.25/2.6.1-2.6.3に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
      あったらワル者が悪行三昧…?

アレゲはアレゲを呼ぶ -- ある傍観者

処理中...