SQLインジェクション

不正アクセスの中国人留学生逮捕 価格.comなど侵入か - ITmedia ニュース

このニュースから当初その侵入手口を公表しなかった価格.comの事件も同様にSQLインジェクションに対してぜい弱であったと考えて良いのかな。

それにしてもSQLインジェクションが有効なサイトってそんなにあるものだろうかと多少びっくりしたのが本音です。例によってITマスコミは怖いぞ怖いぞと煽っていますがきちんと対策していればそれほど恐い攻撃だとは思えないんですけどね。

システムがWebベースであると仮定した場合我々開発サイドの対策としては

・データベースに接続する際に所有者権限等の高次権限は使用しない
・HTMLから入力されるデータのサニタイズを行う
・文字種別や桁数を検査するためサーバサイドバリデーションを行う
・余計な情報(内部情報を含むログ、スタックトレース、例外等)は表示しない

これだけしっかり対策していればまず大丈夫なのではないでしょうか。この他には極端な対策としてデータベースへの直アクセス(JavaならばJDBC経由のアクセスも含む)を一切禁止しているケースも見たことがありますがそこまで対策するケースは希ではないかと。

「Dependencyインジェクションで依存性を注入してるぜ」と謳ったものの
SQLインジェクションSQLを注入されたぜ」と泣かないように気をつけたいものです。