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

Linuxカーネル2.4でローカルからrootへDoS攻撃が可能 8

ストーリー by yourCat
獅子身中の虫 部門より

k3c 曰く、 "SecurityFocusのこちらの記事 (詳しい解説はBuqtraqへの投稿を参照のこと) によれば、Linuxのカーネル2.4.*において、root権限で使えるよう予約されたファイルディスクリプタの数 (上限10) を、ローカルユーザがファイルディスクリプタを大量に消費することで食い潰すことができてしまう。その結果、ユーザはコマンドを実行できるがroot権限ではコマンドが実行できない、というDoS攻撃が成立する。exploitは公開されているがパッチはまだ。ワタシの手元で試してみたところ、確かにDoS状態になりました。投稿者によれば "Exploitability to get uid=0 has not been confirmed yet but seems possible." なのだそうで…。要警戒か?"

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • このルート用にfile descriptorを残しておこう、というコード自体がかなりquick hackで元々、確実に残しておく意図で書かれているのではなく、「もうかなりダメなシステムで運がよければrootでなんとか出来るかもしれない。出来ればラッキー」思想なものなので、どこかの会社みたいに「バグではありません、仕様です」としか言えないような。

    ただ、これを機会にもっとちゃんと緊急用リソースを温存する様になればいいな。逆にfile-maxそのものを無くせ、という議論もなされているみたいだし。
    • rootだってカーネルと一体ではなくて、
      スーパーではあっても一人のユーザだからねぇ。

      実際、rootでコマンド実行しても、そのコマンドは
      メモリ保護されるものの、ユーザ空間で動くことになるはず。
      違ったかな?

      だから、カーネル内部の処理だけがロバストになって
      コケなくなっても、ちっとも意味がないのでは。

      今話しているのは基本的に、特権ユーザへのリソース配分を
      どう確保するかの問題ですよね。

      例えばext2のHDDにはrootのためのスペースが作成時に
      若干用意してあったりしますが、今までのLinuxカーネルは
      ディスクスペースに関しては対処できていたが、プロセスの
      リソースに関して言えば、rootの作業用に残しておくスペースを
      確実に用意できてなかったと、これが問題の本質では?
      親コメント
    • by Anonymous Coward on 2002年07月11日 17時31分 (#123208)
      うーむ。それは仕様がバグってます。カーネルの処理はユーザアプリケーションより優先してロバストであるべきです。
      親コメント
    • つーか、root の作業領域を残すということであれば、
      単純に実効 UID じゃなくて、実 UID or 保存 UID を見るようにしたら
      回避できない?
      --
      # mishimaは本田透先生を熱烈に応援しています
      親コメント
  • 管理の鉄則 (スコア:1, 興味深い)

    by fut (9276) on 2002年07月11日 19時09分 (#123278) ホームページ 日記
    UNIX系のOSの場合、歴史的にローカルユーザは仕事仲間で
    あって、うっかり間違いをすることはあっても、悪意を持っ
    てDoS攻撃をすることは考えていないと思います。それ
    でも最近は、システムコールでリソース確保制限するよう
    にはなりましたが、気休めにしかすぎません。

    本当に重要なシステムには管理者以外のアカウントは作ら
    ないものです。UNIX系のシステムでサービスを構築する際
    の常識だと思いますが。
    • Re:管理の鉄則 (スコア:2, すばらしい洞察)

      by rajihkaa (9408) on 2002年07月12日 11時11分 (#123737) ホームページ
      >本当に重要なシステムには管理者以外のアカウントは作ら
      >ないものです。UNIX系のシステムでサービスを構築する際
      >の常識だと思いますが。

       ユーザアカウントの管理と言う点では正解かと思いますが、
      サービスを構築する際にはサーバ用にアカウント(apacheとか
      ftpとかdaemonとか?)を作るかと思います。

       これらのサーバがスタックオーバーフローとかで乗っ取られて
      ローカルからDoS攻撃を受ける可能性はあるでしょう。乗っ取って
      からローカルにDoS攻撃するかどうかは謎ですが(^^;)、他に何も
      できないような素晴らしいシステムが構築されていれば嫌がらせに
      それぐらいやるかも知れません。
      親コメント
  • by Anonymous Coward on 2002年07月12日 0時45分 (#123493)
    プロセスディスクリプタでもページでも、ローカルで故意に使い尽くせば
    自ずと root 権限なプロセスでも影響を受けると思うんですけど
    ∴無闇とローカルユーザを増やしやいけないと...(違?
  • by Anonymous Coward on 2002年07月12日 10時15分 (#123690)
    電話会社が緊急用に確保してるはずの回線が一般回線の混雑時に
    食いつぶされてしまってました、ってか

typodupeerror

海軍に入るくらいなら海賊になった方がいい -- Steven Paul Jobs

読み込み中...