webForumDet fria alternativet

Förhindra att sidan sql-hackas

3 svar · 319 visningar · startad av Kristianstad

KristianstadMedlem sedan dec. 2002841 inlägg
#1

Hej!
Notera följande exempel:

tabortinlagg.asp?ID=342

<%
Conn.Execute("DELETE FROM tabell WHERE ID=" & Request.QueryString("ID"))
%>

Vi går sedan in på tabortinlagg.asp?ID=342 OR ID<>342
SQL-frågan blir då DELETE FROM tabell WHERE ID=342 OR ID<>342. Då går samtliga inlägg i tabellen bort!

Vanliga SQL Injections kan man ju förhindra genom att göra enkelfnuttar till dubbelfnuttar, men det fungerar ju bara på strängar.

Hur förhindrar jag detta på ett smidigt sätt?

solbulleMedlem sedan mars 20015 287 inlägg
#2

Du gör tex en koll att det bara är den med behörighet får lov att ta bort saker o ting på det där sättet.
Tex kolla om personen i fråga är inloggad.

/red. fast det löser iofs inte ditt egentliga problem...

PsyDoniaMedlem sedan maj 2003924 inlägg
#3

ersätt med replace mellanrum med inget alls alltså Replace(str,"<","") och samma sak med < och > för dom teknen ska väl aldrig användas ändå typ borde hjälpa lte eller.

celiaMedlem sedan dec. 20012 532 inlägg
#4

Kolla om ID är numeriskt, dvs bara innehåller siffror.

130 ms totalt · 3 externa anrop · v20260731065814-full.fb544a5a
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
127 ms — hämta tråd, inlägg och bilagor (db)