ProgramováníPočítačInternetBlog

Databáze

16. 07. 2010SQL injection
SQL injection
SQL injekce.

SQL injekce je vlastně vložení vlastního kódu, pomocí neošetřených vstupů

Představíme si, že máme tabulku accounts obsahující login a password.
Uživatel zašle data pomocí přihlašovacího formuláře a my zpracujeme jeho dotaz pomocí tohoto kódu

mysql_query("select accounts.id from accounts where 
  accounts.login='$_POST[login]'
  and accounts.password='$_POST[password]' limit 1
");

Nyní si představíme, jak bude vypadat SQL dotaz, po dosazení proměnných login za 'pepa' a password '123456'

mysql_query("select accounts.id from accounts where 
  accounts.login='pepa'
  and accounts.password='123456' limit 1

Celý článek