トップ回答者
IIS7.0におけるSQLインジェクション対抗策

質問
-
プラットフォームはWINDOWS2008Server R2+MSSQLSERVER2008Expressです。1ヶ月ほど前からデータベースに悪質なスクリプトが書き込まれるようになりました。そこで、DBユーザー名もパスワードも変更しましたがそれでも書き込まれるので、データベースにUPDATEもしくはinsertしているファイルにエスケープ処理をしようとしていますが、ファイル数が多いので一旦、それらのファイルに外部からアクセスできないようにIISで設定してしまいました。ほとんどすべてのIPアドレスからのアクセスを拒否するようにマスクは0.0.0.0に設定しています。アクセスしようとすると403エラーになります。ところがそれでもスクリプトが書き込まれるのです。こういう攻撃って可能なのでしょうか?
ファイルアクセス不可にも関わらず、テーブルに書き込みされるということは、ファイルにエスケイプ処理を施しても無駄だと思い、
とりあえずDBのすべてのユーザーにテーブル」への挿入・更新権限を拒否しました。これでやっと書き込みがなくなりましたが、この設定ではWEB上から何らかのデータ操作をしようとする毎にWEBサーバーにリモートデスクトップ等でアクセスして、SQLサーバーのユーザーに権限付与しなければならず、WEBアプリケーションとしての意味がなくなります。対応策はあるのでしょうか大変困っています。
サーバーへの解放ポートはport80のみで、当然、SQLポート1433どは閉じています
回答
-
こんにちは、フォーラムオペレーターの三沢健二です。
まずはフリーのツールなどを使ってチェックしてみてはいかがでしょうか?
(何かヒントが見つかる可能性がありますので)- 参考情報
マイクロソフト セキュリティ アドバイザリ (954462)
http://www.microsoft.com/japan/technet/security/advisory/954462.mspxSQL インジェクション
http://msdn.microsoft.com/ja-jp/library/ms161953.aspx
SQL インジェクション攻撃とその対策
http://technet.microsoft.com/ja-jp/library/dd362952.aspx第4回 SQLインジェクションの対策
http://thinkit.co.jp/article/847/1?page=0,1
http://thinkit.co.jp/article/847/1?page=0,2
すでにご存じと思いますが、SQL インジェクション対策はサーバー側の設定以外にも、対策を施した Web アプリケーションの開発やアクセスログの解析など、かなり幅広い対応が必要になってくると思いますので、可能であれば専門の業者などへご相談された方が良いと思います。
(ある程度ご質問の内容が絞れていると、こういった無償フォーラムでも何らかの情報が得られるかもしれませんが、今回は全体的な SQL インジェクション対策についてのご質問のように見受けられましたので・・)
あまり具体的なアドバイスではないかもしれませんが、、、
こちらの情報が少しでもお役にたてれば幸いです。______________________________________
マイクロソフト株式会社 フォーラム オペレーター 三沢健二- 回答としてマーク 服部清次 2010年11月4日 5:27
すべての返信
-
こんにちは、フォーラムオペレーターの三沢健二です。
まずはフリーのツールなどを使ってチェックしてみてはいかがでしょうか?
(何かヒントが見つかる可能性がありますので)- 参考情報
マイクロソフト セキュリティ アドバイザリ (954462)
http://www.microsoft.com/japan/technet/security/advisory/954462.mspxSQL インジェクション
http://msdn.microsoft.com/ja-jp/library/ms161953.aspx
SQL インジェクション攻撃とその対策
http://technet.microsoft.com/ja-jp/library/dd362952.aspx第4回 SQLインジェクションの対策
http://thinkit.co.jp/article/847/1?page=0,1
http://thinkit.co.jp/article/847/1?page=0,2
すでにご存じと思いますが、SQL インジェクション対策はサーバー側の設定以外にも、対策を施した Web アプリケーションの開発やアクセスログの解析など、かなり幅広い対応が必要になってくると思いますので、可能であれば専門の業者などへご相談された方が良いと思います。
(ある程度ご質問の内容が絞れていると、こういった無償フォーラムでも何らかの情報が得られるかもしれませんが、今回は全体的な SQL インジェクション対策についてのご質問のように見受けられましたので・・)
あまり具体的なアドバイスではないかもしれませんが、、、
こちらの情報が少しでもお役にたてれば幸いです。______________________________________
マイクロソフト株式会社 フォーラム オペレーター 三沢健二- 回答としてマーク 服部清次 2010年11月4日 5:27
-
7SEANET さん、
こんにちは。
フォーラム オペレーターの服部 清次です。7SEANET さんがこちらの質問を投稿されてから少し経ちましたが、
弊社の三沢健二の回答はご確認いただけましたでしょうか?今回、弊社の三沢の回答は 7SEANET さんのご質問に対するピンポイントな回答ではなかったかも
しれませんが、現象を改善するための参考情報として役立てていただけるのではないかと思いましたので、
勝手ながら、ひとまず私の方で [回答としてマーク] させていただきました。ぜひ弊社の三沢が紹介しましたリンク情報などを参考に、専門業者などへのご相談もご検討いただければと
思います。また何か困ったことなどがありましたら、TechNet フォーラムをご利用ください。
今後とも、TechNet フォーラムをよろしくお願いします。
それでは、また。
__________________________________________________
マイクロソフト株式会社 フォーラム オペレーター 服部 清次