Сегодня на собеседовании среди прочего попалась такая задача:
Таблица вида:
books: id (int,11); name(varchar,255); descriptions(text)
$query="SELECT name, descriptions FROM books WHERE id='".$_GET['key']."'limit 1";
$res=mysql_query($query);
if($res &&mysql_num_rows($res)>0){
while($row=mysql_fetch_assoc($res)){
echo $row['name'];
echo $row['descriptions'];
}
}
Сделать SQL инъекцию чтоб было видно все книги
Как бы если бы не limit 1 в конце, то я бы предложил для инъекции такой вид
SELECT name, descriptions FROM books WHERE id=1 OR 1=1
Т.е. в $_GET['key'] передал бы '1 OR 1=1'
Но тут лимит и честно говоря я не могу придумать как вывести список всех. Есть у кого какие мысли? :)