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

ruby-lang.org、クラックの詳細を公開 37

ストーリー by Acanthopanax
失敗から学ぶ 部門より

Anonymous Coward曰く、"今年の5月にクラックされてしまったhelium.ruby-lang.org (WWW、FTP、CVS)だが、その後の調査の詳細が公開されている。侵害の詳細、ソースコードを含めた各コンテンツに対する改竄の検証方法と結果などについて記述されており、ruby-lang.org管理グループの努力がよくわかる。chroot環境のCVSを更新しなかったために侵入を許してしまったことは痛いミスだったと思うが、その後の対応やその詳細を公開したことには好感を持てる。Rubyファンの一人として、ruby-lang.org管理グループの方へ感謝の念をささげたい。"

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

    by ramsy (8353) on 2004年07月11日 8時32分 (#586975) ホームページ 日記
    chroot用のコピーの存在を見過ごしていたことが原因のようですが、特定の外部pkg modfy(update)をトリガーに後付出来る仕組みってないんでしょうかねぇ。
    せっかくのpkgシステムなんだからchroot用のコピーもちゃんとフォローできる仕組みがあるといいですね。
    --
    # rm -rf ./.
    • by znz (2728) on 2004年07月11日 8時47分 (#586979) 日記
      rpmだと%triggerin/%triggerunでしょうか。
      親コメント
      • Re:chroot (スコア:2, 興味深い)

        by ramsy (8353) on 2004年07月11日 9時17分 (#586985) ホームページ 日記
        「後付で」ということに着目して欲しかったですね。
        %triggerin/%triggerunでは私の言う事が実現できません。
        chrootコピーするときはダミーパッケージを作れ、ということかもしれませんが、いささか乱暴ですよね。
        rpm -[ieU] cvsしたときのトリガースクリプトを後付けする方法、です。
        もちろん、rpm本体のスクリプトをいじって作ればいいのはわかりますが、Distribution側で採用しないことにはあまり意味がありませんよね。
        --
        # rm -rf ./.
        親コメント
    • Re:chroot (スコア:1, 参考になる)

      by Anonymous Coward on 2004年07月11日 17時07分 (#587171)
      > chroot用のコピーの存在を見過ごしていた

      このへんにDebian(のユーザ)の急所を見た思いがします。

      一度Debianをいじっていたとき、apt-get で追加したアプリケーションが
      デスクトップのメニューに自動で追加されるのに気づきました。
      これは便利だ!と感心したのですが、/etcの下のメニューが更新されてる
      だけなので、自分でいじりたくなって ~/.* を読み込むように設定すると、
      当然自動更新はされなくなりました。
      (昨年試してすぐ消しちゃったので、間違ってたらツッコんで下さい)

      要するに自分で(パッケージの想定外な)カスタマイズすると、管理、更
      新が非常に面倒(=落し穴ができやすい)になってしまう、と思われます。

      # Debian/GNU Linux に限った話でもなさそうだけど。
      親コメント
  • chroot破り? (スコア:2, 興味深い)

    by Anonymous Coward on 2004年07月11日 8時34分 (#586976)
    報告書の「== chroot環境外への影響の可能性」に
    侵入者がchrootを破るためには、特権ユーザへの昇格が必要となります。
    とあるんですがchrootって特権あれば破れる==chroot外のファイル改竄?ということですか? chrootってそういうもの?それともまたcvsとは別の脆弱性?

    検索してFix chroot(2) vulnerability of linux 2.2 [luky.org]とか見ると昔そういうセキュリティホールはあったみたいですが、今回のheliumの状況でchroot破る手段があったと考えられるのでしょうか?

    • Re:chroot破り? (スコア:5, 参考になる)

      by Anonymous Coward on 2004年07月11日 10時58分 (#587017)
      chroot(2)のman pageにも特権さえあれば
      chroot jailから脱出できると書いてあるぞ。
      他にも勝手にカーネルモジュールをブチ込んで以下略
      とか出来るから特権を取得されたら危険だと考えるべき。

      capabilityで特権ユーザの権限を制限しておけば
      特権を取られてもchroot jailからの脱出や危険な
      カーネルモジュールの挿入は防げるようになる。

      Linuxケーパビリティ [linux.com]
      Manpage of CAPABILITIES [homepages.cwi.nl]
      親コメント
      • by Anonymous Coward
        ahigutiさん,ACさんありがとうございます。 chrootってそういうものだとは。linuxは5年以上つかって結構使い倒していたつもりですが全然知りませんでした。修行してきます。
        # クーラーつけたらブレーカーが落ちたのでAC
    • Re:chroot破り? (スコア:5, 参考になる)

      by Anonymous Coward on 2004年07月12日 9時42分 (#587504)
      一応補足しておきますと、
        - Linuxのchroot(2)にあるchroot jailからの脱出法 (#587014のリンク先と原理は同じ) は、chroot(2)の中でchdir相当をする実装 (NetBSD、OpenBSDなど) では無効です
        - #587014の、「mknodしてmountしなおす」は、一般的には不可能です。chroot jailの中では、jailの外側のファイルシステムをumountすることはできないからです。ただし、Linuxでは1つのファイルシステムを複数回 (別なmount pointに) mountできてしまうので、mountしなおす、というよりはjailの中にあらたにmountして以下略、ということも可能だと思われます
        - #587092 にあるように、root権限があるとカーネル空間、他のユーザー空間などいくらでも書換え放題ですが、*BSDのsecurity levelによる保護のように、/dev/mem、/dev/kmemへの書き込みを禁止することができる実装も存在します (security levelによる保護は、Xサーバを動かすためなどの理由で無効にしていることもあるでしょうが、サーバ用マシンでは有効にすべきです)
        - もちろん、chroot jailを過信するのは危険であることは言うまでもありません

      # FreeBSDのjail(2)のことをよく知らないのでAC
      親コメント
      • Re:chroot破り実演 (スコア:1, 参考になる)

        by Anonymous Coward on 2004年07月13日 0時07分 (#587941)
        >mountしなおす、というよりはjailの中にあらたにmountして以下略、ということも可能だと思われます

        よく分からないので追試してみますた。(kernel2.4.26)
        大体こんな感じです。

        # mkdir -p /home/chroot/newmount && cd /home/chroot
        # cp -a /bin /sbin /lib /etc .
        # mkdir -p /home/chroot/dev && cd /home/chroot/dev
        # mknod hda1 b 3 1

        # chroot /home/chroot /bin/bash

        # mount -t ext3 /dev/hda1 /newmount

        // exitしても umount されませんから注意して!
        親コメント
        • by Anonymous Coward on 2004年07月13日 9時28分 (#588090)
          # もう誰も読んでないと思うけど...

          ・chroot環境下でもmknod動きます。
          ・chroot環境で既存のパーテーションをmountされても、その外側からは
          わかりにくいようです。
          (外でmountコマンド叩いても表示されないし、mountを記録している
          /var/log/messagesにも出なかった...)
          何されても気づかない...かどうかまでは追試しきれてないですが。

          # あな恐ろしやchroot
          親コメント
    • Re:chroot破り? (スコア:4, 参考になる)

      by ahiguti (10103) on 2004年07月11日 10時51分 (#587014)
      root権限があればmknodしてディスクをmountしなおしたり できるので、chroot()は簡単に破られてしまいます。また、こういう方法 [bpfh.net]もあります。
      親コメント
      • Re:chroot破り? (スコア:2, 興味深い)

        by saitoh (10803) on 2004年07月11日 13時50分 (#587092)
        root権限があれば、極端な話、カーネルメモリ空間を書き換える こともできますから、原理的にはchroot解除でもなんでも出来ますね。
        親コメント
        • by Anonymous Coward
           「XXX を YYY に設定すると root でも~できなくなる」
          なんてセキュリティ機構が *BSD にも Linux もありますが、
          あれも手間暇かければ何とでもできるんですか?
        • by Anonymous Coward
          ご冗談でしょう。root権限とカーネル空間とは直接関係ありません。

          カーネルモジュールのロードなどのインタフェースを禁止すれば ユーザプロセスからカーネル空間には手は出せません。

          • Re:chroot破り? (スコア:1, 参考になる)

            by Anonymous Coward on 2004年07月12日 9時10分 (#587492)
            /dev/kmemとか/dev/memをご存知ない?
            親コメント
            • by Anonymous Coward
              もちろん知ってますが。だから「など」と書いたわけだし、 システムコールと限定せずにインタフェースとしたわけだし。

              まさかメモリファイルデバイスを無効化する方法を御存じないとか?

    • by Anonymous Coward
      あるユーザにとって / が適当な場所であるように見えるだけで、他の(chrootされていない)ユーザに su すれば、そのユーザにとっての / は本来の / なのではないでしょうか。
      もっとも今回は昇格がなされていないようなのでchroot外のファイルの改竄はない という結論のようです。
      • by Anonymous Coward

        chroot されてないユーザ? chroot ってプロセスごとに設定されるもんじゃないんですか?

  • 三菱自動車の (スコア:1, すばらしい洞察)

    by Anonymous Coward on 2004年07月11日 15時45分 (#587140)
    三菱自動車の旧経営陣に読ませたいですね。
    あいだみつおじゃないけど人間だから間違いを犯すことはある。
    でも、その後の対応になぜこうも差が出るのか?
    改めてオプンソースプロジェクトに係わっておられる方々の素晴らしさに感動しました。
  • by Anonymous Coward on 2004年07月11日 19時00分 (#587214)
    > その後の対応やその詳細を公開したことには好感を持てる。

    そうかな? 昨今では割と普通の対応になっていると思うけれど
    一部の酷すぎる例に比べれば段違いに良いが
    この程度で 好感が持てる というのは悲観的過ぎないかな
    • Re:好感? (スコア:3, 興味深い)

      by Anonymous Coward on 2004年07月11日 23時40分 (#587357)
      個人的には、感動しました
      だって・・・ボランティアなんでしょ?
      こういう人たちって、普段何やっている人なの?
      サラリーマン?大学職員?

      だったらすごすぎ・・・
      親コメント
      • by basidium (22136) on 2004年07月12日 1時56分 (#587422)
        こういう人たちって、普段何やっている人なの?
        サラリーマン?大学職員?

        だったらすごすぎ・・・

        なんかけっこう深いところを突いた指摘のような気がする.

        ただ,ボランティアかどうかは関係ないのではないでしょうか.彼らに「これは自分たちのプロジェクトだ」という意識があって,また彼ら自身が責任のとり方を決められたから,技術者としての落とし前をきっちりつけられたということなんじゃないか,と思います.

        もちろん,そういう場合にいつでもきちんとした責任の取り方がなされるわけではないのは,たとえば浅田農産のケースを見れば明らかなんですが.

        これが企業や官公庁などの(大きな)組織だとなかなかねぇ……エラい人たちには「自分たちがやってしまったこと」というよりも「下のバカどもがやったミス」に見えるんでしょうし(社員がちゃんと働かないのがいけない!),下の方に心ある人たちがいたとしても,彼らに責任のとり方の決定権があるわけではない.いや,そういう問題だけじゃないのかな? うーん.

        # 考えがまとまらなくてすみません……

        # このへん,社会学や(社会)心理学で分析されてそうですね

        親コメント
        • Re:好感? (スコア:1, 参考になる)

          by Anonymous Coward on 2004年07月12日 10時49分 (#587547)
          #587357です。
          そうなんでしょうね、「ボランティアなのによく頑張り
          ました。」っていったら、馬鹿にしたことになるんでし
          ょうね。

          うまくいっていることを、声高に喧伝する人はいるだろ
          うけど、事故のレポートをこんなにきちんと作るなんて。

          私などは、自分の仕事だけで、いっぱいいっぱいなのに、
          世の中には志の高い人がいらっしゃるんですね。
          親コメント
      • Re:好感? (スコア:1, 参考になる)

        by Anonymous Coward on 2004年07月12日 3時42分 (#587455)
        オープンソースのプロジェクトで働く人たちの動機の一つに同業者に対する評判(名声) [cruel.org]があります。
        再発を防ぐために企業でもこういった作業は重要ですが、
        オープンソースのプロジェクトにとってはよりプライオ
        リティの高いものになっていると思います。
        親コメント
        • Re:好感? (スコア:3, 参考になる)

          by Anonymous Coward on 2004年07月12日 9時50分 (#587505)
          「ノウアスアフィアの開墾」の思考実験(といってみる)は、崩壊の問題に直面している
          ように思います。

          1: ユーザ数の増加による問題
          1-1: 開発者の相対的な減少
          1-2: 開発者の時間がユーザサポートに割かれるようになってしまった
          1-3: 開発者にとって「楽しいハック」と違う部分でのスキルや労力が必要になる
                    (例としてセキュリティのような)
          1-4: 新規ユーザは、開発者に対して「文句は言うが評価はしない」傾向にある

          これらだけで、本文にある以下の要素は低減する。
          ・ 贈与経済としてのハッカー文化
          ・ ハッキングのよろこび

          他に、
          2: 社会的責任の変化
          2-1: 牧歌的開発時代の終焉-ミスが許されない-それは「ハック」ではない。
                  (しかも速やかな対応が求められる→決して楽しい作業ではない)
          2-2: 組織運営の難しさ
                    大規模になればなるほど、中心人物は楽しい作業ができない
                    そのくせユーザは文句ばっかり言う
                    (使ってるくせに開発ヤメロなんて言う奴までいる始末だ)

          「ハック」ってのは、「作りは雑だけど、とにかく動くもの」というニュアンスがあります。
          しかし、今の時代「ハック」自体が許容されなくなってきています。
          「動くこと」ではなくて「品質」を要求されるのは「ハック」ではなくて「プロダクト」ですね。
          「プロダクト」は、普通はカネ払って入手するものだと思います。

          私は、「ノウアスアフィアの開墾」がダメな文献というつもりはありません。
          優れたドキュメントですが、もう現状とは合致しなくなりつつあるのです。

          旧来のバザール開発モデル自身がOSSの弱点になる前に、開発からユーザサポートまで
          含む総括的な開発・サポートモデルを作らないといけないのじゃないかと思います。

          # 怖い人のツッコミが怖いのでAC
          # (本来は恐れなくてもいいはずだが、それを恐れないといけないのが悲しい)
          親コメント
          • とりあえず、もじら組と openoffice.org のユーザグループは、それでご飯を食べている人はいないそうですね。書籍を書いたりということで収入を得る人はいるようですが、かといってプロジェクト運営を日々の行動の主体にできるほどではないようで。

            自分が今まで出会ったことのある人たちという狭い範囲での印象ですが、本職とは違う部分でフリーソフトやオープンソースのプロジェクトにかかわっている人って、本当に大変そうでした。

            サイトやプロジェクトの運営にかかわると、それに時間も気力も消費され続けて、コードを見て書いて楽
      • by ruto (17678) on 2004年07月12日 14時23分 (#587660) 日記
        まつもとゆきひろさんや今回の対応をされた前田修吾さんは株式会社ネットワーク応用通信研究所というところに勤めていらっしゃって、rubyはそこで研究・開発されています。もちろんオープンソースとして。
        親コメント
        • by Anonymous Coward
          「rubyはそこで研究・開発されています」ってのは、NaCl社員じゃない開発者達の存在を無視した発言なのでは。
          NaClのサポートは非常に大きなものではありますが、別にrubyの開発主体じゃありません。
      • by Anonymous Coward
        だったら暇すぎ・・・
    • by Anonymous Coward
      まだまだ「普通の対応」にはなってないと思います。
      元に戻して知らんぷり、良くて「緊急メンテナンスを行いました」
      が殆どでしょう。
      そして、抜本的対策もせずにコンテンツだけ戻してるので再度…というのがかなりの数あるというのが現状です。
typodupeerror

最初のバージョンは常に打ち捨てられる。

読み込み中...