Mam pewne pytanie, ot?? czy kto? zna spos?b jak mo?na si? zabezpieczy? przed SQL Injection? S?ysza?em o takiej jednej funkcji ale nie wiem czy ona pomaga si? zabezpieczy? przed tym atakiem
.WhiteBlue, Nigdy nie korzysta?em z tej funkcji ale sprawdzi?em troch? na internecie i na Wikipedii. Na wiki jest napisane, ?e w pewnym sensie zapobiega ona SQL Injection . Robisz to na zasadzie zmiennej, u?ywaj?c dbPrepareStringServer a nast?pnie dbQuery (Tak jak na przyk?adzie). Nie jestem pewny ale my?l?, ?e powinno to pomoc .
.WhiteBlue, hmm sql injection pojawia si? jak masz b??d w syntaxie(albo jest nielogiczny). Czyli np.
SELECT * FROM Users WHERE UserId = 105 or 1=1;
. Sql injection jest nie logiczne, czyli jak b?dziesz robi? wszystko wed?ug syntaxu, i nie b?dziesz si? myli? nie ma prawa si? zdarzy?. Z tego co wiem czasem mo?e si? zdarzy? jak dajemy zmienne lua do stringu zamiast string.format. Przyk?ad z mojego skryptu kiedy nie wiedzia?em ?e mo?e to spowodowa?:
w mta bardzo trudno jest wykona? sql injection, samo
zapytanie("insert into tabela values(?,?,?)",1,'test',0x6%0x2)
bez prepare uniemo?liwi wykonanie ataku, testowa?em r?zne sposoby atakowania i wklejenie nawet ca?ej tablicy znak?w ansii i utf8 zako?czy?o si? sukcesem
w mta bardzo trudno jest wykona? sql injection, samo
zapytanie("insert into tabela values(?,?,?)",1,'test',0x6%0x2)
bez prepare uniemo?liwi wykonanie ataku, testowa?em r?zne sposoby atakowania i wklejenie nawet ca?ej tablicy znak?w ansii i utf8 zako?czy?o si? sukcesem
Dzi?kuj? Ci bardzo za pomoc, m?g?by? mo?e wyt?umaczy? dzia?anie tej funkcji dbPrepareString? By? bym Tobie bardzo wdzi?czny.
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach