|
24. 05. 2012. | #1 |
expert
Grand Master
Datum učlanjenja: 11.04.2010
Poruke: 998
Hvala: 141
959 "Hvala" u 153 poruka
|
^ ili možeš da pregledaš source...
mysql_real_escape_string() ne escapuje backtick, tako da se može ovo uraditi, vidjao sam slučajeve, ali rijetko... SELECT * FROM `users` WHERE `username` = `admin` AND `password` = `1` OR 1 = 1;--` |
31. 05. 2012. | #2 | |
Ivan Dilber
Sir Write-a-Lot
|
Citat:
Taj napad bi mogao da se upotrebi ako je ime baze ili polja dinamicko i uzima se spolja bez provere, ali to je vec druga prica, jer te od toga ne stiti ni prepered statement. I tamo te vrednosti moraju da budu definisane u SQL-u prilikom prepare-ovanja, tako da bi to moglo da se hakuje na isti nacin.
__________________
Leadership is the art of getting people to want to do what you know must be done. Poslednja izmena od ivanhoe : 31. 05. 2012. u 01:32. |
|
31. 05. 2012. | #3 | |
novi član
Na probnom radu
Datum učlanjenja: 17.05.2012
Poruke: 18
Hvala: 4
0 "Hvala" u 0 poruka
|
Citat:
In many databases it is advisable to protect table and field names - for example with backticks in MySQL. Active Record queries are automatically protected, however if you need to manually protect an identifier you can use: Kôd:
$this->db->protect_identifiers('table_name'); |
|
|
|