Avatar billede data2k.dk Nybegynder
04. november 2004 - 20:17 Der er 8 kommentarer

SQL injection

Jeg har et problem...
Hvis man i adresselinien skriver

'et eller andet

så kommer der fejl på min side... det må der helst ikke! for så kan man finde frem til min database eller hvad man nu kan ... hvordan kan man undgå dette?

kan evt poste koden til hvor min database kaldes for det er nok der rettelsen skal laves
Avatar billede petan Nybegynder
04. november 2004 - 20:20 #1
prøv at se nærmere på denne artikel: http://activedeveloper.dk/artikler/default.asp?articleid=297
Avatar billede petan Nybegynder
04. november 2004 - 20:21 #2
Du skal sørge for at alle ' bliver udskiftet med noget andet. Ved ikke hvad funktionen hedder i ASP, men sikkert et eller andet med replace.
Avatar billede petan Nybegynder
04. november 2004 - 20:23 #3
strSQL = "SELECT felt1, felt2 FROM minTabel WHERE Brugernavn = '" &_
      Replace( Request.Form( "Brugernavn" ), "'", "''" ) &_
      "' AND Password = '" &_
      Replace( Request.Form( "Password" ) , "'", "''" ) & "'"
Avatar billede data2k.dk Nybegynder
04. november 2004 - 20:30 #4
det stykke med databasen ser sådan her ud.. og og alfa request er fordi man kan sortere efter bogstav.. 


<%
intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
    intPage = 1
End If

Set rs = Server.CreateObject("ADODB.RecordSet")
strSQL = "SELECT * FROM items WHERE godkendt=1"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("database.mdb")
If Request("alfa") > "" Then strSQL = strSQL & " AND instr('" & LCase(Request("alfa")) & "',lcase(left(title,1)))>0"
strSQL = StrSQL & " ORDER BY hits desc"
rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then
    rs.PageSize = 40
    rs.AbsolutePage = intPage
    intRecCount = rs.PageSize
    intPageCount = rs.PageCount
    Response.Write "<p><b>Page " & intPage & " of " & intPageCount & "</b></p>"
    %>
Avatar billede apocryphal Nybegynder
05. november 2004 - 11:26 #5
Hvad med det VBS ekvivalente til try-catch-finally når man bruger JScript?

Er det OnError eller sådan noget man skriver?
På den måde kan du fange fejl, og skrive din egen fejlbesked.

--
Jonas
Avatar billede data2k.dk Nybegynder
05. november 2004 - 12:10 #6
jeg må indrømme jeg slet ikke er nået så langt asp endnu så ved ikke rigtig hvordan det skulle gøres...
Avatar billede apocryphal Nybegynder
05. november 2004 - 12:19 #7
Hmm... Jeg programmerer kun ASP i Javacript, hvilket jeg personligt har lettere ved.
Men det er ikke ret mange mennesker der bruger JavaScript til ASP.

Søg evt. på google efter "VBScript OnError"
Avatar billede petan Nybegynder
02. januar 2005 - 19:18 #8
måske er det på tide at lukke dette spm.
Avatar billede Ny bruger Nybegynder

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester