- 締切済み
IIS7.0におけるSQLインジェクション対抗策について教えてください
IIS7.0におけるSQLインジェクション対抗策について教えてください 1ヶ月ほど前からデータベースに悪質なスクリプトが書き込まれるようになりました。 そこで、DBユーザー名もパスワードも変更しましたがそれでも書き込まれるので、データベースにUPDATEもしくはinsertしているファイルにエスケープ処理をしようとしていますが、ファイル数が多いので 一旦、それらのファイルに外部からアクセスできないようにIISで設定してしまいました。 ほとんどすべてのIPアドレスからのアクセスを拒否するようにマスクは0.0.0.0に設定しています。 アクセスしようとすると403エラーになります。 ところがそれでもスクリプトが書き込まれるのです。 こういう攻撃って可能なのでしょうか? ファイルアクセス不可にも関わらず、テーブルに書き込みされるということは、ファイルにエスケイプ処理を施しても無駄だと思い、 とりあえずDBのすべてのユーザーにテーブル」への挿入・更新権限を拒否しました。 これでやっと書き込みがなくなりましたが、この設定ではWEB上から何らかのデータ操作をしようとする毎にWEBサーバーにリモートデスクトップ等でアクセスして、SQLサーバーのユーザーに権限付与しなければならず、WEBアプリケーションとしての意味がなくなります。 対応策はあるのでしょうか 大変困っています。 サーバーへの解放ポートはport80のみで、当然、SQLポート1433どは閉じています
- みんなの回答 (2)
- 専門家の回答
補足
そもそもファイルアクセス不能にしている状況で「値を直接SQL文に展開しない」という対策が有効なのでしょうか?