Ho capito che inserendo caratteri strani diventano script per la funziona SQL,
esempio: basta inserire
"' OR ''='"
oppure
' OR ''='
e la query cerca il nome oppure tutti i nomi del db, pertanto trova il primo e lo accetta per aprire la sessione.
La soluzione è il rimpiazzo dei simboli.
Posto il CODE corretto per chi avesse bisogno:
codice:
Function FixSQL(stringa)
stringa = Replace(stringa, "'", "''")
stringa = Replace(stringa, "%", "[%]")
stringa = Replace(stringa, "[", "[[]")
stringa = Replace(stringa, "]", "[]]")
stringa = Replace(stringa, "_", "[_]")
stringa = Replace(stringa, "#", "[#]")
FixSQL = stringa
End function
fusername = fixsql(request.form("fusername"))
fpass = fixsql(request.form("fpass"))
sql = "SELECT * FROM tabella WHERE username='"&fusername&"' AND prpw='"&fpass&"'"
set objRs = objConn.Execute(sql)
Sono molto felice di aver risolto il problema merito a michele.santoro che ringrazio moltissimo.
Saluti.