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

Debianのopensslパッケージに欠陥発覚 80

ストーリー by nabeshin
SourceForge.JPユーザーも対応を 部門より
iida 曰く

Debian GNU/Linuxで、0.9.8c-1以降のopensslパッケージに 欠陥が発覚し、修正版パッケージがリリースされた。なお、オリジナルのOpenSSLにこの欠陥はない。

パッケージの再導入が必要なことは当然だが、欠陥を内包したopensslコマンドで生成した鍵は廃棄し、再生成すべき点が重要。Debianのページによれば、

影響を受ける鍵は、SSH鍵、OpenVPN鍵、DNSSEC鍵、X.509証明書を生成するのに使われる鍵データ、および SSL/TLSコネクションに使うセッション鍵です。GnuPGやGnuTLSで生成した鍵は影響を受けません。
とのこと。DebianやUbuntuなどの管理者、利用者は要注意だ。
Debianで運用しているSourceForge.JPでもアップデートパッケージを適用している。アナウンスにあるように、ユーザーの方で該当のクライアント鍵を使っていた場合はSSHログインができない。その場合は鍵ペアを作り直して再登録していただきたい。
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2008年05月16日 9時18分 (#1344997)
    sshの公開鍵認証によってユーザをログインさせる設定を使っているサーバは、NetBSDだろうがSolarisだろうが脆弱な鍵をもらっている可能性があることを強調しないと、まずいと思うのですが....
  • なぜ? (スコア:2, 興味深い)

    by Anonymous Coward on 2008年05月16日 3時02分 (#1344957)
    なぜ Debian のパッケージだけこんな問題が起きたのか
    説明がないのでさっぱり。

    で、チェックするスクリプト(及び鍵)
    http://security.debian.org/project/extra/dowkd/dowkd.pl.gz
    http://security.debian.org/project/extra/dowkd/dowkd.pl.gz.asc
    やらを紹介されているが、どう使ってどういう結果が出れば
    NG なのか説明がないのでさっぱり。

    対象マシンで
    % ./dowkd.pl user
    と実行したけど、何も表示されなかったから OK ってこと?

    さっぱりだ。
    • Re:なぜ? (スコア:5, 参考になる)

      by Anonymous Coward on 2008年05月16日 3時20分 (#1344959)
      親コメント
      • ナイス・フォロー (スコア:1, おもしろおかしい)

        by Anonymous Coward on 2008年05月16日 4時07分 (#1344968)
        ナイス・フォローありがとう。

        > Sarge までの Debian で生成したSSL証明書は今回の問題の影響を受けません。

        なんだ、大丈夫だった。

        マテ、いつまで同じ鍵を使ってるんだ俺。
        親コメント
      • Re:なぜ? (スコア:1, すばらしい洞察)

        by Anonymous Coward on 2008年05月16日 9時45分 (#1345009)
        見つけたバグをちゃんと本家にフィードバックしていれば、
        その段階でパッチの誤りが発覚したかもしれないのにねぇ

        バグフィックスのつもりでエンバグした挙げ句に
        フィードバックもしないとは、酷すぎるな

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

          by Anonymous Coward on 2008年05月16日 10時15分 (#1345020)

          見つけたバグをちゃんと本家にフィードバックしていれば

          ほれ。 [mail-archive.com]

          親コメント
          • by Deasuke (34806) on 2008年05月16日 11時03分 (#1345053) 日記
            「コンパイル通らんからコメントアウトした!!」ってことですか?
            それは酷すぎる!!
            --
            Best regards, でぃーすけ
            親コメント
            • assert() きちんと(自分ではそのつもり)使ったら、
              「あんたのせいでバグが増えた、テストもできん」
              って怒られた。assert() でチェックせずにテストに回して
              あれこれ謎の不具合が見つかるほうが非効率的だと思うのだが。

              そして俺の assert() タンはコメントアウトされた。

              #ぜってーおかしいって、その assert() が通らんのは
              --
              屍体メモ [windy.cx]
              親コメント
              • by Deasuke (34806) on 2008年05月18日 9時27分 (#1345817) 日記
                > assert() でチェックせずにテストに回して
                > あれこれ謎の不具合が見つかるほうが非効率的だと思うのだが。
                確かに。
                assert()は自動で行う「テスト」ですよね。想像ですが本件は、単体試験を行わずに結合試験やるようなものですね。
                --
                Best regards, でぃーすけ
                親コメント
              • 高校生頃からのゲーム作りというかパソ通での交流なんかで
                自分なりに assert って大事だよな、って肌で感じてましたけど、
                大学生のときに Writing Solid Code [amazon.co.jp] って本を読んで、
                改めて assert の大切さを認識しました。

                やっぱりマイクロソフトも泥臭い苦労してるんだなぁ、と親近感を覚えました。
                --
                屍体メモ [windy.cx]
                親コメント
    • by Deasuke (34806) on 2008年05月16日 10時55分 (#1345048) 日記
      MacOSX(Leopard) 10.5.2ですが、結果は

      % perl ~/Downloads/dowkd.pl user
      summary: keys found: 3, weak keys: 0

      なので、何も表示されないのは動作がおかしいのでは?もし改行がないせいで何も表示しないように見えているなら、

      % ./dowkd.pl user; echo

      とやってみてはどうでしょうか?
      --
      Best regards, でぃーすけ
      親コメント
  • これはやばい (スコア:2, 参考になる)

    by Anonymous Coward on 2008年05月16日 3時31分 (#1344960)
    今後起きそうなニュースを想像。

    ・SSHワームが現れる。Debianの当該バージョンで生成した公開鍵を登録しているサイトが軒並み侵入され、ボットネットに編入される。Webサイトの場合はウイルスを埋め込まれる。

    ・某認証局の中間CA証明書の鍵がDebianの当該バージョンで作成されていたことが攻撃者に先に知られ、偽のWebサイト証明書が大量に作成され、フィッシングサイト多発。当該CAをrevoke。当該CA発行の証明書を使っていたサイトが軒並み証明書の再発行手続きに追われる騒ぎに。

    ・Debianの当該バージョンで生成したサーバ証明書で運用中のSSLサイトのリストが晒しあげられる。いつまでたっても直らないとニュースになる。
  • by Livingdead (18685) on 2008年05月16日 7時57分 (#1344987) ホームページ 日記
    この脆弱性がアナウンスされた直後から実家鯖が応答しない.ガクブル.
    とりあえずケーブル抜いてもらっているのだけど,何が起こっていたのかわからず,
    次に実家に帰る時までどうしようもない.ああ,どうなってるんだ~気になる.
    sarge のときから鍵はそのままだったような気もするし,更新した気もするし・・
    動的IPアドレスでDynamic DNSを使っているからその更新遅れかもしれないけど,
    再びケーブル刺してもらうのも怖いし.
    --
    屍体メモ [windy.cx]
    • by 127.0.0.1 (33105) on 2008年05月16日 9時26分 (#1345001) 日記
      今回のニュースをうけて、sshポートが開いているサーバーに
      アタックをしかけた結果、攻撃先のサーバーがたまたま
      本件の脆弱な鍵を使っていて、かつ短時間で鍵を割り出せて
      侵入できたーというのは可能性としては非常に低いと思われますね。

      以前から総当り攻撃を受けていて、たまたまこのタイミングで
      鍵が分かっちゃったというのも可能性としては低い。
      仮にその場合、侵入されるまでに攻撃元からのアクセスを拒否する等、
      対策を取らなかったことがまずいけど。

      もしかして、脆弱性のニュースをキャッチして危険を感じたらssh
      ポートを閉じてしまうような賢いAIでも搭載していましたか?
      いや、sshデーモンが自我に目覚めて反乱を起こしたということも……

      親コメント
      • by knok (35) on 2008年05月16日 11時10分 (#1345058) ホームページ

        Debian generated SSH-Keys working exploit [securityfocus.com]

        既にexploit codeがBUGTRAQに流れています。最新のopenssh-serverパッケージ であれば危険なホスト鍵を使っていたら自動的に置き換えるのである程度は安心ですが、 アップグレードができているかどうかは確認しましょう。

        新しいパッケージ openssh-blacklist(危険な乱数列のリスト)が必要となるので、dist-upgradeでないと 置き換わりません。その点ご注意を。

        ZDNet Japan Blog - 日本Linux協会blog:OpenSSL問題その後 [zdnet.com]にも解説してあります。

        --
        knok
        親コメント
      • Re:実家鯖ガクブル (スコア:2, すばらしい洞察)

        by Anonymous Coward on 2008年05月16日 10時04分 (#1345015)
        >可能性としては非常に低いと思われますね。

        そんなんで済むんならセキュリティなんていらないよねー。
        親コメント
      • by Ryo.F (3896) on 2008年05月16日 10時51分 (#1345047) 日記

        攻撃先のサーバーがたまたま本件の脆弱な鍵を使っていて、かつ短時間で鍵を割り出せて侵入できたー
        SSHで侵入ってことなら、「サーバが」ではなくて「サーバ上のあるユーザが」でしょうし、鍵を割り出す前に、「あるユーザ」のユーザ名を割り出さねばなりませんね。

        外部公開サーバなのにSSHでrootログイン可能で、しかもその鍵をsargeで生成、なんてのが最も危険なパターンなのかな?
        #そんな悪い子は/.Jにはいないと思いますが…
        親コメント
      • iptables というか Netfilter で tcp/22 への SYN はゆっくりしか受け取れない
        設定をしていたので,総当たりするとなると何日もかかると思うんだよな・・

        となると,単にハードディスクがクラッシュしたか!
        って,それはそれでえらいこっちゃ.
        --
        屍体メモ [windy.cx]
        親コメント
  • by Anonymous Coward on 2008年05月16日 3時36分 (#1344961)
    Debianを元にしているディストリも同様です。
    (例:Ubuntu)
    • by Anonymous Coward on 2008年05月16日 6時55分 (#1344977)
      http://www.ubuntu.com/usn/usn-612-1 より

      影響のあるリリース:
        * Ubuntu 7.04 (Feisty)
        * Ubuntu 7.10 (Gutsy)
        * Ubuntu 8.04 LTS (Hardy)
        * Ubuntu "Intrepid Ibex" (development): libssl <= 0.9.8g-8
        * Debian 4.0 (etch) (see corresponding Debian security advisory)
      親コメント
      • by KAMUI (3084) on 2008年05月16日 16時58分 (#1345218) 日記
        先日、二日続けて openssl のセキュリティアップデートが出てたような気がしたが、この問題の所為か?>Hardy

        #さっさと当てちまったのでよく判らん。
        親コメント
  • by Anonymous Coward on 2008年05月16日 3時36分 (#1344962)
    ssh接続した先のPCをパッケージアップデートしたいんだけど
    問題ないの?
  • by Anonymous Coward on 2008年05月16日 9時33分 (#1345005)
    patchごちゃ混ぜされたらレビューも発見もしずらいわな
    ほかにもあるんじゃないの?この手のミス
  • なんか SSH 鍵の話題ばっかりだけど、
    SSLの鍵についても作り直しをしなければならないのがかなり厳しい。
    SSH なんて、ほとんどの場合サーバ管理者にしか関係ないけど、
    SSL だとWebアプリ全般に関わってくるんだぜ…

    で、サーバ証明書取り直さなきゃいけないとなると予算が…
    近所ではクライアント証明書ぜんぶ再発行&CAの作り直しの話をしてる…

    #これから数日の間にSSL証明書を切り替えるサイトには注目してください。
    #その中には、Debian 使いがいるかもしれないのだから…
    --
    # mishimaは本田透先生を熱烈に応援しています
  • by Anonymous Coward on 2008年05月17日 6時58分 (#1345516)
    DSA-1571-1 [debian.org]より

    さらに、影響を受ける Debian システムで、署名や本人認証の目的で使われた全ての DSA 鍵は脆弱であると考えてください。デジタル署名アルゴリズムは、署名生成時の秘密の乱数の値に依存しているからです。
    (訳がいまいちですが「デジタル署名アルゴリズム」というのはDSAのことです)
    DSA鍵の場合は、署名等に使用したシステムが脆弱なら生成された署名から秘密鍵が類推できるものと思われます。 例えば、Sargeで生成したDSA鍵をEtchにアップグレードした後も署名に使っているとかいう場合に その署名が悪意あるものの手に渡ったら元のDSA鍵が暴かれてしまうということのようです。
    • いまいち何のことをいっているのかよくわかりませんが、Sargeで生成されたssh鍵や OpenSSLの証明書を使っている分には、危険はありませんよ。

      問題があるのは、危険な乱数生成アルゴリズムで作成された公開鍵・秘密鍵のペアを 使うことなので、OpenSSLが安全だったころに作った証明書が持つ公開鍵・暗号鍵や、 sshの鍵には問題ありません。

      --
      knok
      親コメント
  • by Anonymous Coward on 2008年05月16日 1時55分 (#1344945)
    未初期化の変数って本当に十分なエントロピー持ってるのか?
    • Re:いやしかし (スコア:2, 参考になる)

      by Anonymous Coward on 2008年05月16日 12時38分 (#1345101)

      未初期化の変数って本当に十分なエントロピー持ってるのか?
      認識が違います。OpenSSLは本来それに頼ってないです。Debian Bug report #363516 [debian.org] にもありますが、ssleay_rand_add()のほうのbufは純粋にinputとしての引数です。
      # これくらいその関数内のコード追っかけるだけで分かるのに、ほんとに何やってんだか。

      本来はアプリケーション側がランダムなデータを用意してssleay_rand_add()に食わせてランダム性を 確保するようになっています。そこをコメントアウトしたので全くランダム性が失われていたのです。

      原因は、valgrind使ったアプリケーションが本当にタコで未初期化のバッファを渡していたか、 パッチ作成者が悪意を持ってパッチを書いたか、でしょう。
      親コメント
      • Re:いやしかし (スコア:2, 参考になる)

        by Anonymous Coward on 2008年05月16日 13時50分 (#1345147)

        原因は、valgrind使ったアプリケーションが本当にタコで未初期化のバッファを渡していたか、
        失礼、筆がすべりました。
        OpenSSL内部で未初期化のバッファを渡している部分があるという指摘がありました。
        http://www.links.org/?p=328 [links.org]
        しかしOpenSSLが未初期化のバッファに依存しないということには変わりありません。

        上述のページには「何が問題だったか」と「今後どうすべきか」がまとめてありますので、詳しく知りたい方は是非読んでみてください。
        親コメント
  • by Anonymous Coward on 2008年05月16日 2時01分 (#1344947)
    いまさら騒ぐのは滑稽だ
typodupeerror

日本発のオープンソースソフトウェアは42件 -- ある官僚

読み込み中...