記事へのコメント20

    • 注目コメント
    • 新着コメント
    kmaebashi
    kmaebashi 組み合わせ爆発が起きるようなwhereを組み立てる場合、SQLを組み立てるよりは、「プリペアドステートメントの元になる文字列を動的に組み立てる」方がはるかに安全だと思う。文字列連結する以上絶対ではないにせよ。

    2016/03/08 リンク

    その他
    Caligari
    Caligari “[{"key1":"val1"},{"key2":"val2"},...]という配列をリクエストで受け取り、WHERE key1 = ? AND key2 = ? ...というようなSQLへ変換してしまうとどうなるだろうか”どうなるの?

    2014/12/22 リンク

    その他
    tyru
    tyru いくつか追加条件を指定できる検索画面では組み立てていくしかないって話/ライブラリ(O/Rマッパー)での対処例としてはこういうのがいいと思う http://doma.seasar.org/reference/sqlfile.html#条件コメント

    2014/03/30 リンク

    その他
    kanno_kanno
    kanno_kanno “SQLインジェクションについても同様にテストが重要”

    2014/03/09 リンク

    その他
    te2u
    te2u この手の話題に「正解」「間違い」を安易に持ち込むのはどうかと思う。それぞれの利点・欠点をおさえて、対象の環境を鑑みて一つ一つ判断するしかない。あとはその環境の範囲内でルール化して、手法の分散を防ぐ。

    2013/12/16 リンク

    その他
    nemoba
    nemoba ORMでクエリーが自由に飛ぶ時代だし、全てのクエリー検証は確かに理想だけど、実装設計の段階で優先順位や利用方針を決めておかないと、フリーダムに混在してテストが困難になって諦められてしまうよー

    2013/12/16 リンク

    その他
    akio0911
    akio0911 漢(オトコ)のコンピュータ道: SQLインジェクション対策に正解はない

    2013/12/15 リンク

    その他
    akasata
    akasata ふむふむ

    2013/12/15 リンク

    その他
    terazzo
    terazzo そうか、SQLインジェクションがない事を証明出来ればいいのか>テストせよ

    2013/12/15 リンク

    その他
    ghostbass
    ghostbass Linqで解決。あるいは同等のクエリービルダーを実装する。そんなに難しいことじゃない。

    2013/12/15 リンク

    その他
    k-holy
    k-holy これはいいまとめ。どのような場合に使えないかを知らない人が多い印象

    2013/12/14 リンク

    その他
    uunfo
    uunfo ついにまとまるか?

    2013/12/14 リンク

    その他
    t-wada
    t-wada バランスの取れた意見だと思う

    2013/12/14 リンク

    その他
    tmatsuu
    tmatsuu 柔軟な検索についてはWHERE (? OR 検索条件1) AND (? OR 検索条件2) AND…として?にTRUEかFALSEを設定すれば組み合わせ爆発にならんけどね。もちろん限界があるのは百も承知。

    2013/12/14 リンク

    その他
    atsushifx
    atsushifx どこかでブックマークしたけどSQLというプログラミング言語を誰かの入力を元に組み立てる必要がある時点で完全なセキュリティは無理だと思う。ホワイトリスト/ブラックリストや全文検索エンジンも組み合わせるべき

    2013/12/14 リンク

    その他
    m_shige1979
    m_shige1979 SQLインジェクションは結構複雑だけど、穴を見つける方法って何があるんだろう。複雑なパターンの網羅がしにくい。権限などで抑制するけど

    2013/12/14 リンク

    その他
    muchonov
    muchonov そーそー、まさにそれで悩んでた>「入力した条件だけが使われる検索」/わたくしも「foreach + case〜switchで個別のPOST値があるかどうかを判定しながらprepared statementの断片を積んでゆく」路線に落ち着きました。

    2013/12/14 リンク

    その他
    girled
    girled 臨機応変に使い分けるってことになるよなあ。実装の話だけでなく保守、メンテ性とかも含めて考えるとなおさら。

    2013/12/14 リンク

    その他
    jt_noSke
    jt_noSke "どのようにすればSQLインジェクションを防げるかという要件さえ満たしていればそれで良いのではないだろうか。"フムー

    2013/12/14 リンク

    その他
    cubed-l
    cubed-l ご自身が書かれているとおり、バインド機構を使えない、あるいは他の要件を優先するために使わない箇所だけエスケープを使う、が正解でしょ

    2013/12/14 リンク

    その他

    注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

    アプリのスクリーンショット
    いまの話題をアプリでチェック!
    • バナー広告なし
    • ミュート機能あり
    • ダークモード搭載
    アプリをダウンロード

    関連記事

    SQLインジェクション対策に正解はない

    最近、SQLインジェクションのネタが盛り上がってるようだ。下記のTogetterまとめあたりが震源地だろうか...

    ブックマークしたユーザー

    • kjtec2017/07/10 kjtec
    • unagi_tabetai2016/07/04 unagi_tabetai
    • kmaebashi2016/03/08 kmaebashi
    • s_mori2015/10/05 s_mori
    • takanamito2015/02/13 takanamito
    • Caligari2014/12/22 Caligari
    • CONTOROLL2014/11/20 CONTOROLL
    • masayoshinym2014/09/09 masayoshinym
    • celt69cobra2014/03/30 celt69cobra
    • tyru2014/03/30 tyru
    • kanno_kanno2014/03/09 kanno_kanno
    • heatman2014/01/13 heatman
    • bero20062014/01/10 bero2006
    • tomo_thumb2013/12/29 tomo_thumb
    • islejp2013/12/27 islejp
    • meets6232013/12/23 meets623
    • ziguzagu2013/12/19 ziguzagu
    • hamaco2013/12/19 hamaco
    すべてのユーザーの
    詳細を表示します

    同じサイトの新着

    同じサイトの新着をもっと読む

    いま人気の記事

    いま人気の記事をもっと読む

    いま人気の記事 - テクノロジー

    いま人気の記事 - テクノロジーをもっと読む

    新着記事 - テクノロジー

    新着記事 - テクノロジーをもっと読む

    同時期にブックマークされた記事