strSQL= "SELECT * FROM liste WHERE (Bruger = '" & username & "' AND Pass='" & password & "');" Set rs = connect.Execute(strSQL)
if not rs.EOF then session("aakjaer") = "ind" session("brugerID") = rs("Id") session("brugerNavn") = rs("Navn") Session.Timeout = 60 connect.Close Response.Redirect("in.asp") else 'Fejl i brugernavn eller password Response.Redirect("log.htm") end if %>
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Du laver nogle replace's ligesom du gjorde i starten af dit script - men leder i stedet efter f.eks. ", (, ), "select", "drop" etc. Hvor mange kommer an på hvor meget du vil gøre ud af det.
Kunne jeg eventuelt ikke lave en liste (whitelist) over de karakterer som GERNE må indgå i brugernavn og password, - og smide alle logins med andre karakterer tilbage til log.htm? Hvordan kan en sådan liste puttes ind i mit script?
strSQL= "SELECT * FROM liste WHERE (Bruger = '" & username & "' AND Pass='" & password & "');" Set rs = connect.Execute(strSQL)
if not rs.EOF then session("aakjaer") = "ind" session("brugerID") = rs("Id") session("brugerNavn") = rs("Navn") Session.Timeout = 60 connect.Close Response.Redirect("in.asp") else 'Fejl i brugernavn eller password Response.Redirect("log.htm") end if end if %>
Men får denne fejl?¿?
Der opstod en Microsoft VBScript-kørselsfejl fejl '800a01c2'
Antallet af argumenter er forkert eller egenskabstildelingen er ugyldig
Jeg ved ikke om det er relevant, men jeg vil da lige nævne, at jeg øverst i mit dokument har to linier stående: <% Option Explicit %> <!--- #include file="db.asp" --->
Joe, men så må det jo kun være på et bogstav. Og udover det skal der bare være et enkelt bogstav i sætningen, og så er resten jo ligegyldigt... så f.eks. "DROP table blabla´" ville blive godkendt, da der jo er min. et bogstav i.
Hvad der går galt med linie 11, hmm, det er regexp-syntaksen der er forkert. Som sagt bruger jeg det ikke så tit og er derfor ikke helt sikker i den.
Med din anden løsning er problemet stadigvæk, at et af bogstaverne skal bare være i variablen, men den vil stadig godtage den, også selv om der er "farlige" tegn. Så længe der er et bogstav i den, vil den godkende.
YES det virker tilsyneladende. Kan jeg eventuelt tilføje flere ting i "^[a-zA-Z]{1,10}$" ? Hvilke tegn ville være relevant i forhold til SQL sætninger?
og ud fra det kan jeg læse at "^[a-zA-Z]{1,10}$" betyder at jeg skal finde alle tal fra a-z og A-Z og op mellem 1-10 karakterer, - $ betyder slutningen af linien og ^ betyder find alle
hmm... nej det virker stadig ikke, jeg oprettede for sjov en person med et password som indeholdte 'å' og vedkommende kan sagtens logge sig ind alligevel... hvad skal laves om?
hmm... undskyld, men jeg bliver nødt til at smutte ind foran fjernsynet sammen med min kæreste, men vil meget gerne fortsætte dialogen i morgen. På gensyn.
Jeg har mod på at fortsætte nu, håber nogle kan hjælpe mig videre idag. Jeg har fundet ud af nogle ting: Når jeg prøver at logge på systemet, så får jeg en hvid blank side, hvis jeg skriver over 10 karakterer som brugernavn, og hvis jeg skriver æ, ø eller å i brugernavnet (ikke passw). Men i stedet for den hvide blanke side ville jeg gerne have at Response.Redirect("log.htm") skulle træde i kraft. Et eller andet er galt med mit script... sender lige hele scriptet som det ser ud nu:
if ValidateString( Request.Form("navn") ) then %> <% Dim username, password, strSQL, rs username = replace(Request.Form("navn"),"'","") password = replace(Request.Form("password"),"'","")
strSQL= "SELECT * FROM liste WHERE (Bruger = '" & username & "' AND Pass='" & password & "');" Set rs = connect.Execute(strSQL)
if not rs.EOF then session("aakjaer") = "ind" session("brugerID") = rs("Id") session("brugerNavn") = rs("Navn") Session.Timeout = 60 connect.Close Response.Redirect("in.asp") else 'Fejl i brugernavn eller password Response.Redirect("log.htm") end if end if %>
yep, - så vil jeg da lige være fræk og spørge om du kende nogle sites som skriver om login sikkerhed på web? :)
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.