-3

the parsing of user name has a ' inside of the user name and i think that is causing the code to break when i set it with this

tempUsername=Request.Form("UserName")

if (Request.Form("Action") = "Login") then
    tempUsername=Request.Form("UserName")
    tempPassword=Request.Form("UserPassword")

is that assumption right? if so what is a solution to this?

4

1 に答える 1

1

ジェームズのコメントにジャンプし、この質問に答えます:

入力のサニタイズは、すべての言語の問題です。ユーザー名に文字が含まれていなくても'、このコードは危険です++

少なくとも、データRequest.formの受け渡し先 (データ ストアやディレクトリ解決コードなど) のコンテキストで危険な文字をエスケープ/サニタイズする関数を使用して、取得したすべてのデータを実行します。

を使用したコードに関しては、<%これは ASP スクリプトであり、構文は V​​B のように見えます。特に(Request.Form("Action") = "Login")、80 年代以降、「=」を等値テスト演算子として使用するまともなプログラミング言語は存在しないため、完全に無料です =)

于 2013-09-04T16:20:21.757 に答える