SQL Serverデータベースを持つASP.NET Webアプリケーションを使用している場合、SQLインジェクション攻撃が行われる場合、SqlCommand
クラスのインスタンスを通過すると想定するのは安全ですか?SqlCommand以外でSQLインジェクション攻撃を実行できますか?
背景:
私はいくつかのSQLインジェクションの脆弱性があり、むしろ大規模なWebアプリケーションを継承した状況にしています。 SQLインジェクションの脆弱性を発見する安全な方法は、すべてのファイルをSqlCommand
のインスタンスで検索し、それらがパラメータ化されたクエリであるかどうかを確認することでしょうか?これは確かな計画ですか?
あなたが他の誰かのプロジェクトを話しているなら、最後のビットは非常に重要です。 sprocsがある場合は、それらを徹底的に監査したい。データがすでにdbに入っているからといって、SQLコマンドに連結するのは安全ではありません。 – Wedge
すばらしい答え!最後の質問 - インジェクション攻撃がSQL Serverレベルで行われる場合、EXECを使用して実行する必要がありますか? –