最近、SQLインジェクションのネタが盛り上がってるようだ。下記のTogetterまとめあたりが震源地だろうか。 「プリペアードクエリが基本だけど、動的に SQL を組み立てる場合もあるから、そういう場合に備えてエスケープも知っておいたほうがいいかも」 - Togetterまとめ まとめを読んだ感想としては、「どちらの意見も間違ってはいない」というものだ。前提あるいは見方が異なるために、見解の相違が生じているだけのように思う。SQLインジェクションについては私も若干思うところがあるので意見を書いておこうと思う。 攻撃を防ぐのは難しいSQLインジェクションをはじめとするセキュリティ対策が難しいのは、ひとつでも穴があると致命的なダメージを受け得るということだ。「どうやって効率よくコードを書くか」とか「コードのメンテナンス性を高めるにはどう書くべきか」みたいな議論とは全く質が異なる議論が必要になっ
![SQLインジェクション対策に正解はない](https://cdn-ak-scissors.b.st-hatena.com/image/square/43a7503923f34fab27b0677da801e1b95ad34697/height=288;version=1;width=512/https%3A%2F%2Fblogger.googleusercontent.com%2Fimg%2Fb%2FR29vZ2xl%2FAVvXsEjOcP9-xC0VQ5b6lyNiky2pAvXe3pfq6WzFuLuVLpkXsO_PczPpQJL-ZevtqHNoGhMsHg_zhxrXz8zv8lTtNzxtbGfb6Mk-Zm4-oA6SBZDaOmxdLgS9CmGqIy4kR_c6LIrK6jjJPeRSsPs%2Fs800%2Flogo.png)