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

OpenBSDがOpenSSLの大掃除に着手、「OpenOpenSSL」サイトも立ち上がる 96

ストーリー by hylom
OpenBSDが動く 部門より
tamo 曰く、

OpenBSDがOpenSSLの大掃除に着手しています(slashdot)。

たとえばlibssl/src/sslを見ると、CVSに罵倒と修正がひっきりなしに記録されています。

Heatbleed対策のパッチだけで満足しなかった理由は、彼らから見てHeartbleedが単なるバグや仕様の問題ではなく、セキュリティ意識の問題から産まれたものだからです。

何年も前から 「OpenSSL はサルが書いてるんだろう」と揶揄していたとおり、OpenSSL コードの品質が低いことをOpenBSD開発者たちは知っていましたが、それが意識や責任感の問題だという確信はまだなかったのかもしれません。

OpenBSD にはメモリ防護機構がありますので、Heartbleed脆弱性があっても当初、malloc.confにJオプションを付ければfree済みメモリはシュレッダーにかけられ秘密は漏れないだろうと思ったそうです。しかし実際には効きませんでした。OpenSSLは独自のfreelistを管理することで、脆弱性緩和策を回避し、確実に脆弱になるように書かれていたのです(拙訳)。しかも、オプションで普通のmalloc/freeを使うようにすると動作しません。それはfreelistに捨てたメモリを拾い直しても内容が同じであるという前提のコードだったからです。

つまりOpenSSLは、速度のためにセキュリティを犠牲にするオプションを追加し、それをデフォルトにし、それを無効にした場合のテストをしていなかったということになります。こうした事情を考えた結果、OpenBSDでは上流とマージしやすい状態を保っていたOpenSSLを今後独自にメンテナンスすることに決めたということのようです。

ちなみにOpenBSDは、「俺たちがいないと困るだろう。だったら続けられるように金をくれ」と言っています。今のままのOpenSSLで満足なら無視すればいいのですが、OpenBSDがこれまでどおりOpenSSHなどを開発しつつ、それに加えてOpenSSLにも注力することを望む場合には、OpenBSDのCD 購入や寄付といった援助を増やすことができます。彼らは「脆弱性をスポンサーに売って暮らしているような開発チームはバグを減らしたくないはずだ」と言って FreeBSDに敵意を向けています。そういった形態をとらずに開発を続けているOpenBSDが資金に苦労する日々はまだ続きそうですから、今回の件は、資金集めのための話題づくりという意図もあるのかもしれません。

OpenBSDが立ち上げたサイトopnopenssl.orgでは、「インターネットのセキュリティをアマチュアの手に置いておく訳にはいかないからプロジェクトを立ち上げた」と説明されている。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2014年04月17日 18時53分 (#2584147)

    いかに強い暗号であろうとも、遅いと使われません。
    ということで、脆弱性を起こさないようにしながらも速度を優先するのは必要悪かと。

    OpenSSLのコードが読みにくいという部分は同意。
    でもこれは、今では廃れたコーディングスタイルという所から来ているような…。

    • by Anonymous Coward

      SSLの目的はセキュリティなんだから遅さなんてどうでもいい話です。速さよりも安全性を追求するべきです。

      • 「速さより安全性の方が重要だ」ならそうだと思うけれど、「目的はセキュリティなんだから遅さなんてどうでもいい」というのは現実と合っていないよ。当然、程度問題。

        親コメント
        • by Anonymous Coward

          速度を求めるなら最新のプロセッサとそれに付随するハードウェアアクセラレータを使いなよ

          • たぶんあなたは暗号理論における遅いアルゴリズムがどのくらい遅いかわかっていないと思う。

            親コメント
            • by Anonymous Coward on 2014年04月18日 0時54分 (#2584360)

              先祖コメが問題にしてるのは、暗号アルゴリズムじゃなくて、(たぶん)メモリ保護の話ですよね。

              オプションで設定できるとしても、そこに行くまでに回り道が多くて、どことトレードオフしているのかはっきりしなくなる、ってのはバグを追っかけてるとよく発生する話で、分野的な門外漢だとわかりにくい、ってことは往々にあるわけですから。ましてや、今回のはオプション設定を切ると動作しなくなるのですから、標準的なmalloc/freeを使っていたユーザーが1人もいなかった、典型的なキッチンシンク事案ですね。「こうすると動く(しかも速い)からさわるなよ」、ってことでしょう。

              プロセッサ云々は噴飯物ですが。

              親コメント
          • by Anonymous Coward

            スタンドアロンでいくら早くなってもネットワークが遅いままでは話にならない

    • by Anonymous Coward

      で、どれだけ速くなるの

  • by Anonymous Coward on 2014年04月17日 17時41分 (#2584088)

    UIというか何と言うか、opensslコマンド(相当)のオプションとか引数とか、その辺りもごっそりの見直してくれないかな。

    • by Anonymous Coward on 2014年04月17日 17時56分 (#2584101)

      それをするぐらいならopensslじゃなくて他のを使ったりfrom scratchで書くと思う。
      portsその他への影響を最小限にするためopensslのforkを選んだのでは。

      親コメント
      • by Anonymous Coward on 2014年04月17日 18時03分 (#2584105)

        オフトピですが、セキュリティ関連ツールのUIがひどいのは確かですからね。

        GitHubに秘密鍵をアップしちゃうバカが後を絶たないのも、そこら変に問題があるんじゃないでしょうか。Combat Proofはあっても、Fool Proofになってない、というか。

        親コメント
      • by Anonymous Coward on 2014年04月17日 18時30分 (#2584126)
        ちなみにセキュリティホールを作る最も簡単な方法はセキュリティを担うモジュールをスクラッチすることらしいよ。がんばって。
        親コメント
    • by Ryo.F (3896) on 2014年04月18日 0時58分 (#2584362) 日記

      コマンドのopensslって、あくまでもライブラリのお試し用か試験用って感じだよね。
      例えば、opensslのcaコマンドのマニュアルにも、排他制御しないので並列処理は無理(意訳)、って書いてある。
      その程度のものだと思って使うのが正しいんじゃないかな。

      まともに使えるUIは、別のプロジェクトでどうぞ、ってことなんでしょう。
      実際、OpenSSLのライブラリをリンクする認証局ソフトウェアもいくつか出てるね。

      親コメント
  • by Anonymous Coward on 2014年04月17日 18時44分 (#2584137)

    やられた、Openを重ねる発想はなかった。

  • by Anonymous Coward on 2014年04月17日 23時33分 (#2584315)

    一番信頼性が重視させるOpenSSLの実装がこれじゃあね。

    みんなが自由にソースを見ているから信頼性が高くなるなんていうことが
    幻想に過ぎなかったってことを実証しちゃったって感じだなあ。

  • UnclosedSSLとかOpenSSL(revised)とか、そういう微妙な名前にはできなかったか。

    # しっかし改善項目の中に"KNF of most C files"があるあたり、根が深そうだなぁ。
    ## コーディングルールすら守れてないのだろう、という意味であって、スタイル種別はまあいいんだけどね。

    --
    M-FalconSky (暑いか寒い)
  • by Anonymous Coward on 2014年04月17日 23時39分 (#2584320)

    OpenBSDが立ち上げたサイトopnopenssl.orgでは

    と書かれているけど、OpenBSDプロジェクトが立ち上げたというアナウンスはどこかにあった?みつけられず・・・

    • by Anonymous Coward on 2014年04月18日 3時50分 (#2584398)

      whois openopenssl.org してみると GoDaddy で取得されて、かつ、Whois情報匿名サービスが利用されていることがわかる。
      openopenssl.org の ns は dns.linbsd.org で、 linbsd.org の Whois情報もおんなじ感じ。
      ちなみに http://linbsd.org/ [linbsd.org] はよくわからないサイト。
      http://www.openopenssl.org/ [openopenssl.org] はさっぱりつながらないけど、怪しさ満載ですね。

      親コメント
      • by headless (41064) on 2014年04月18日 13時39分 (#2584598)
        確かに怪しいですね。Googleキャッシュ [googleusercontent.com]で見ると、OpenBSDのトップページのHTMLをコピーして一部書き換えただけのようです。リンクは一括置換で先頭に「http://openbsd.org/」を付加しただけとみられ、サイト内へのリンクは1つもありません。もともと完全なURLが指定されていたリンクはリンク切れになっているほか、ミラーサイトのリンク先は「http://nsa.gov/」になっていますね。また、openbsd.org側でも、Googleで検索してみた限り「OpenOpenSSL」への言及はありません。
        親コメント
    • by Anonymous Coward on 2014年04月19日 14時49分 (#2585215)

      自己レス。(まだまだ)名前は必要としてないよ。という中の人のコメントありました。
      One week of OpenSSL cleanup [undeadly.org]

      We don't need a name for this right now.
      We don't need a name for this in two weeks from now.
      We don't need a name for this in two months from now.

      親コメント
  • by kemeco (41597) on 2014年04月18日 9時47分 (#2584473)

    でもこの挙動を暗黙の前提として動作する関数って、並列スレッドから同時利用した場合に破綻しないのだろうか

  • by Anonymous Coward on 2014年04月17日 17時23分 (#2584074)

    ヒルベルト・プログラムのように土台を固めるプロジェクトが必要です。

    • by Anonymous Coward

      とういうより階型理論じゃね

  • by Anonymous Coward on 2014年04月17日 19時31分 (#2584164)

    opnopenssl.org

    hylom

  • by Anonymous Coward on 2014年04月17日 21時29分 (#2584244)

    BSDってだけですでにあれなのに、

    > 「OpenSSL はサルが書いてるんだろう」
    >「俺たちがいないと困るだろう。だったら続けられるように金をくれ」
    >「脆弱性をスポンサーに売って暮らしているような開発チームはバグを減らしたくないはずだ」

    FreeBSDをばっさり軟弱モノ扱い。
    まさにKing of BSDですわ。実にしびれるあこがれる。

typodupeerror

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

読み込み中...