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

モジュールの脆弱性を修正したApache 2.0.48/1.3.29リリース」記事へのコメント

  • 「9 個」というあたりが臭いなぁと思って ViewCVS で 1.3.28 と HEAD の diff [apache.org] を見てみました。配列のサイズが 10 と埋め込みで定義されていて、関数に渡す時にはこの最大値が使われなかったということのようですね。

    # そのまま引用しようとしたら、投稿フィルタに引
    --

    -- cooper

    • by Anonymous Coward
      どこにつなげようか迷ったけどここで
      えーーと。まったく別問題だったりするのですが Apache ネタ
      という事でここに書かせてもらいます。

      ab(Apache Bench)にも同様なバグがずいぶん前から付いています。
      具体的には URL を格納するバッファが 1024Byte 固定になっているので
      長いURLを ab に処理させようとすると ab が
      • by Anonymous Coward
        > 問題のコードの 1.3.29 のものを見てみましたが、相変わらず
        > strcpy で 1024Byte の配列にコピーしているなぁ...

        grepすればまだまだアヤシゲなstrcpyを目にすることができるのですが
        それに関しては次回のお楽しみかな?

        char buffer[300];
        if (DosSearchPath(SEARCH_ENVIRONMENT, "PATH",
        interpreter+2,buffer, sizeof(buffer)) == 0) {
        strcpy(interpreter+2, buffer);

        環境変数から得られた文字列を300 byteのauto変数にstrcpyしてみるテストとか。

        Apacheは全体的に
        char buffer[300];
        のようなマジックナンバー
        • by cassandro (6035) on 2003年10月30日 15時50分 (#423917)
          > grepすればまだまだアヤシゲなstrcpyを目にすることができるので
          > すがそれに関しては次回のお楽しみかな?

           この文が続くコード中のstrcpy()が怪しいという意味なら、それは違うんじゃないか、と。DosSearchPath()で事前の縛りを入れてるでしょう。

          > のようなマジックナンバーによる確保が多いです。
          > strcpyやsprintfといった関数の使用が多くてその前後が無頓着です。

           一概に無頓着とは言えないと思いますよ。釈迦に説法とは思いますけど、一応。Cでデータの移し替えをやる場合、元データと同じサイズの領域を確保する方法と、適当な大きさの領域を確保しておいて事前にバッファ溢れをチェックを行う方法とがありますね。
           元コメント(#423858)にあったコードは後者の方法。レビューの際には「妥当」とされるコーディングです。もしもこれに「不適当」と言ったら、「Cを勉強して来い!」と言われかねないです。
           sprintf()は、無頓着は良くないですね。明らかにOKな場合(intを文字列化したテキストを得る、とか)を除いてやはり事前チェックは必要でしょう。それは結構面倒臭いので、自前ライブラリに動的確保を行いつつsprintfする関数を入れて置いたりしますけど。
          親コメント
          • by Anonymous Coward
            >  元コメント(#423858)にあったコードは後者の方法。
            > レビューの際には「妥当」とされるコーディングです。
            > もしもこれに「不適当」と言ったら、「Cを勉強して来い!」
            > と言われかねないです。

            apacheのようなソフトウェアは以下の特徴があります
            ・世界中の大勢の人が利用する(apacheを設置する)
            ・そのユーザー(apacheを設置する人)の多くはソフトウェアに対して強い安全性を求める
            ・二次的なユーザー(apacheにアクセスする人)の中には
                攻撃の意思と十分な技術を持つ者が多く存在している。
                なおかつ彼らは攻撃
            • by cassandro (6035) on 2003年10月30日 16時58分 (#423956)
               レビューでの意見の質とプロジェクトの重大性とは、あまり関係ないでしょう。それよりも、レビューをどれだけ真剣にやるか、レビューの参加者にどれだけのスキルがあるか、の方が。それを経由すれば質と重大性に全く関係ないとは言いませんが。

               #423858のコードは、クリティカルな用途のソフトでも「妥当」とされると思いますよ。問題はそこでしょう?レビューがどうのは直接関係ありません。
               なら、「不適当」である理由を述べたらどうでしょう。どんなレベルのレビューにしても、説明もせずに「不適当」と言い放つのは、まともなエンジニア、マネージャのする事ではありませんから(実際には多いですけどね)。
              親コメント
              • by Anonymous Coward
                真剣にやろうがスキルがあろうが、方向性が違っていれば違った結果が導かれてもしょうがないでしょう。
                それとも、レビュワーはプログラムの用途なぞ考慮する必要がないとでも?
                  #それすらスキルの内ということであれば、それはそれでレビューの意義をいくつか捨
              • by Anonymous Coward
                > なら、「不適当」である理由を述べたらどうでしょう

                誰が「不適当」だと言ったのですか?
                理由だけ存在されても怖い
              • by Anonymous Coward
                > レビューでの意見の質とプロジェクトの重大性とは、あまり関係ないでしょう。

                官僚のコメントのように解釈に悩む表現ですね。
                これは結局のところ「関係がある」という意味になる?

                > それよりも、レビューをどれだけ真剣にやるか、レビューの参加者にどれだけの
                スキルがあるか、の方が。それを経由すれば質と重大性に全く関係ないとは言いませんが。

                これもいろんな解釈が可能。

                > #423858のコードは、クリティカルな用途のソフトでも「妥当」とされると思います
                > よ。問題はそこでしょう?レ
              • by Anonymous Coward

                レビューでの意見の質とプロジェクトの重大性とは、あまり関係ないでしょう

                家庭用ゲーム機用のネット対戦しないタイプのゲームソフト に要求される安全性の質やそれに関するレビューでの意見の質を、 そのままインターネット上のサーバーソフトに持ってこられても困る。 その逆もまた困る。
                それがほとんど関係ないとか、結局

              • by Anonymous Coward
                それとも、レビュワーはプログラムの用途なぞ考慮する必要がないとでも?
                で、どうしてクリティカルな用途でも「妥当」なんですか?


                人に説明を要求して、それに色々文句を付ける。それで「ボクちゃん、お利口!」とか思ってるんだろう。字面に文句を付けてくのは簡単だし頭もいらないんだがなあ。
            • by Anonymous Coward
              > ・世界中の大勢の人が利用する(apacheを設置する)
              > ・そのユーザー(apacheを設置する人)の多くはソフトウェアに対して強い安全性を求める
              > ・二次的なユーザー(apacheにアクセスする人)の中には
              > 攻撃の意思と十分な技術を持つ者が多く存在している。
              > なおかつ彼らは攻撃に特化したクラ

あと、僕は馬鹿なことをするのは嫌いですよ (わざとやるとき以外は)。-- Larry Wall

処理中...