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

Cookieを使用したSQLインジェクション」記事へのコメント

  • by Anonymous Coward on 2008年10月06日 15時37分 (#1432684)
    これこそ高木先生が展開していた「サニタイズ言うなキャンペーン [takagi-hiromitsu.jp]」のターゲットとなる好例ですな。GETやPOST以外からでもデータは入ってくるんだよ、ということで。

    # と私は解釈しているのだが間違ってますかね。
    • Re:サニタイズ言うな! (スコア:1, すばらしい洞察)

      by Anonymous Coward on 2008年10月06日 16時09分 (#1432703)
      誤解が誤解を生んでる好例に見えた。そのキャンペーン自体くだらないと思ってる派ですが
      親コメント
      • Re:サニタイズ言うな! (スコア:1, すばらしい洞察)

        by Anonymous Coward on 2008年10月06日 16時43分 (#1432720)
        くだらないというなら、こんなのに引っかかる連中の方でしょ?
        考える力が足りないから何度も同じようなSQLインジェクションに引っかかるし、サニタイズ言うなキャンペーンも誤解する
        全くどうかしてる
        親コメント
        • 連中ってどの範囲を指しますか?
          1. そのようなコードを書いた本人
          2. そのようなコードがあることを見逃して納品した開発チーム or 開発チームリーダ or プロジェクトマネージャ
          3. そのようなコードがあることを見逃して検収を完了させた発注元
          4. そのようなコードがあることを知らずにサーバ上に乗っけているインフラチーム
          5. そのようなコードがあることを知らずに運用させている発注元の経営者
          6. そのようなコードがあることを知らずに利用しているユーザ
          ちなみにこの時、一番被害を蒙るのはどこでしょうか。

          親コメント
          • by Anonymous Coward
            「連中」とは1,2、被害を被るのは6じゃない?

            ところでサニタイズ言うなキャンペーンは誰が対象ですか?
            1. そのようなコードを書いた本人
            2. そのようなコードがあることを見逃して納品した開発チーム or 開発チームリーダ or プロジェクトマネージャ
            3. そのようなコードがあることを見逃して検収を完了させた発注元
            4. そのようなコードがあることを知らずにサーバ上に乗っけているインフラチーム
            5. そのようなコードがあることを知らずに運用させている発注元の経営者
            6. そのようなコードがあることを知らずに利用しているユーザ

            ちなみにこの時、サニタイズwやら文字のエスケープを意識すべきなのはどこでしょうか。

            #なんなの?この人??
            • フツウは被害者と「罠にかかる」人が一致していないと、マヌケとは言わないのでは。

              被害を蒙らないことをいいことに意図して罠にかかっている場合を考慮しているのかどうか。
              もし、そういう人もマヌケと呼ぶのなら、タブン私と #1432720 のAC氏とはマヌケの定義が違うのでしょう。

              と、それはおいといて。
              プログラムの作成を発注して意図して穴を残された場合、どこまで瑕疵責任を負わせることができるのでしょう。
              IT法務ライブラリ [nikkeibp.co.jp]の記述を見ると、

              過去の裁判例を検討すると,システムの処理速度に関する瑕疵が「重大な瑕疵」と判断されているケースが目につきます
              とあるわけですが、セキュリティホールはどうなるのでしょう。
              私は法律の専門家ではないので推測しかできませんが、意図しての行為だとしても「滅多に無いことだ」とか「製造時は予想できなかった」と言い張られると追求が厳しそうな。
              また、意図してかどうかは、どの程度立証可能なのかとか。考えると厳しそうですけど…。
              # 法律の専門家の方、突っ込み願います

              もし、もし瑕疵責任を取らせることが難しいとなると、SQLインジェクションによる問題はいつまでもなくならないのかもしれないと危惧してしまうわけです。
              そこで、法律上もある程度は瑕疵責任を特別に認定できるようにしておく必要性というものが見えてくるのですが、それはそれで問題がでそうですね。
              そんなわけで、開発者は納期に追われて厳しいと言われている昨今、啓蒙だけではSQLインジェクション問題が無くならないのではと思ってしまうわけですが、いかがでしょうか。

              親コメント
              • サイバーノーガード戦法 [wikipedia.org]なら企業が被害者になることは無いのでいくらでもばっちこいなのでは?
                原因が把握され対応もできる脆弱性が敢えて放置されるのはそれを放置しても(利用者はどうかしりませんが)企業は困らないからだと思いますよ。
                そして既にそれがデファクトスタンダードになりつつあるから自分のとこがそうでも気にしないのでは?ならば、そもそものところでSQLインジェクション問題が無くなるわけがないと思われ。
                --
                ◆IZUMI162i6 [mailto]
                親コメント
    • by Anonymous Coward
      つまり Cookie も消毒しなきゃ!ってことですね。(否

      jbeef たんが言いたかったのは「必要なところでエスケープしようキャンペーン」だと思ってたのだけど、
      いずれにしてもその真意を誰も理解していないという点でキャンペーンとしては失敗だったんじゃないかな。

      # と半可通がデレッとした顔で言ってみる
      • Re:サニタイズ言うな! (スコア:1, すばらしい洞察)

        by Anonymous Coward on 2008年10月06日 20時44分 (#1432903)
        真意も何も、「サニタイズするな」キャンペーンは有意な主張を成しておらず実質何も言ってないのと同じだと思うんですが。
        ・「必要なところ」って何?「出力する直前」という概念は本当にwell-definedか?
        ・何らエスケープされないデータがプログラム内を広く流通する(かもしれない)状況を作り出したとき、リスク増大しない根拠は?

        どう考えても結局データ形式の選択と管理は徹頭徹尾プログラマの責任であり、
        エスケープの有り様は要件と周辺状況に応じて適切に選択されるべきという
        分かりきった結論しか残らんとです、、

        「サニタイズするな」キャンペーン賛同者の大半が「誤解してるかもしれませんが、、」と恐る恐る私的解釈を述べるのも、
        キャンペーンの主張が曖昧であることの裏返しだと思う。

        なおプログラムの階層設計と絡めて上記キャンペーンを理解しようとしてる人もいるようですが、
        階層設計で綺麗にすれば問題解消、というのは数学的根拠に欠けた単なる経験知にすぎず、一般性に疑問符。
        親コメント
        • by Anonymous Coward
          君は全然判ってない。自分で思ってるほどには賢くないよ。
        • by Anonymous Coward
          > 数学的根拠に欠けた単なる経験知にすぎず

          ここが笑うところですか。

物事のやり方は一つではない -- Perlな人

処理中...