0

パラメータ化されたクエリ以外の SQL インジェクションを回避する方法 (特に ASP.net ツールを使用) はありますか?

4

2 に答える 2

0

最も簡単な方法の 1 つは、私がサニタイズと呼んでいるものです。SQLReplace( vsInputString, "'", "''")ステートメントの作成中:

Dim vsSQLStatement = "SELECT * FROM table01 WHERE myField = '" & Replace(vsFormTextInput, "'", "''" ) & "';"

また、SQL インジェクションの停止にも役立ちます。

于 2013-02-04T02:46:06.063 に答える
0

はい、もちろん。パラメータ化されたクエリ以外に、次のことも考慮する必要があります。

  1. ストアド プロシージャの使用
  2. 制限付きアクセス アカウントを使用してデータベースに接続する (管理者レベルではない)
  3. ConnectionString とその他の機密データを暗号化する
  4. (customError で) debug=false を設定して、エラーが発生した場合の情報を最小限に抑えます。

お役に立てば幸いです。

于 2013-02-04T15:12:33.693 に答える