2117966.net -SQLインジェクション-
Published: 2008/04/07
国内の複数の企業が改ざんされたこともあり、いろいろニュースになっています。jyake さんも書かれていますが、新たなサイトも使用されるようになっているようですね。引き続き注意が必要なようです。
さて攻撃内容で、一部特徴的な要求がありました。改ざんを行う際のSQLに下記が含まれています。
select a.name,b.name from sysobjects a,syscolumns b where a.id=b.id and a.xtype='u' and (b.xtype=99 or b.xtype=35 or b.xtype=231 or b.xtype=167)
上記の意味するところは、SQLのカラムの型を調査し、該当するものについて抜き出すものです。ここでいう syscolumns.xtype は、カラムの型を示しています。
35: text
99: ntext
167: varchar
231: sysname
また、sysobjects.xtype が U になるものは、ユーザ作成のテーブルを対称にしているのでしょう。目的としては、Web サーバに使用される文字列を抜き出して、その中に追加していくってことでしょうか。
昨年以前の攻撃では ntext 型のみを狙ったものはありましたが、だんだん対象範囲を拡大しているようです。手法としてはこの後に UPDATE文を用いて改ざんを行う、というものでした。
管理サーバにて SQL を稼動させている場合、上記のカラムに影響がないか確認してみることをお勧めします。
By Mudrock