この記事では主に、パラメータ付き SQL ステートメントを実行する ASP の例を紹介します。SQL インジェクションの脆弱性を効果的に防ぐことができます。
Asp はパラメーターを使用して SQL ステートメントを実行します。SQL インジェクションを効果的にシールドできるパラメーターを SQL ステートメントに追加する必要があります。 ソース コードは次のとおりです。
次のようにコードをコピーします。var conn = Server.CreateObject(ADODB.Connection);
conn.ConnectionString = Provider=Microsoft.Jet.OLEDB.4.0;データ ソース= + Server.MapPath(Test.mdb);
conn.Open();
var cmd = Server.CreateObject(ADODB.Command);
cmd.ActiveConnection = 接続;
cmd.CommandType = 1;
cmd.CommandText = SELECT TOP 1 * FROM [ユーザー] WHERE ユーザー名 = AND パスワード = ?;
cmd.Parameters.Append(cmd.CreateParameter(@UserName, 200, 1, 20, user01));
cmd.Parameters.Append(cmd.CreateParameter(@Password, 200, 1, 16, 123456));
var rs = cmd.Execute();
Response.Write(rs(UserId).value);
rs.Close();
conn.Close();