Издательский дом ООО "Гейм Лэнд"ЖУРНАЛ ХАКЕР #78, ИЮНЬ 2005 г.

Котлета по-киевски

Digital Explosi0n

Хакер, номер #078, стр. 078-056-4


Два слова об SQL Injection

Про SQL Injection твой любимый журнал писал уже не раз и не два. Но для тех, кто только что сошел с бронепоезда, поясню общие понятия. Работа всех интерфейсов для БД основана на том, что в заранее определенные SQL-запросы подставляются различные конкретные данные, определяемые пользователем. Чтобы как-то отделить данные от запроса, обычно их заключают в кавычки. Например, вот так:

$result = mysql_query(\"SELECT pass FROM table WHERE mail='$mail'\");

Если же скрипт не фильтрует полученные от пользователя данные (в примере — переменная $mail), ты можешь попробовать вставить в $mail кавычку «'». Это приведет к ошибке исполнения. Далее надо составить запрос хитрым образом, чтобы он вливался в общую картину, не вызывал ошибок и при всем этом выполнял нужные нам действия. Например, если переменная $mail имеет значение vasya@mail.ru' INTO OUTFILE 'vasya.txt, то запрос получится таким:

$result = mysql_query(\"SELECT pass FROM table WHERE mail='vasya@mail.ru' INTO OUTFILE 'vasya.txt'\");

И после исполнения в файле vasya.txt окажется пароль Василия.

WWW

John The Ripper for WINDOWS: www.openwall.com/john/b/john-16w.zip

John The Ripper for UNIX: www.openwall.com/john/b/john-1.6.tar.gz

INFO

«Пикник на обочине» — А. и Б. Стругацкие: www.stalker3d.net/zip/Piknik.zip

Подборка статей по безопасному программированию: www.web-hack.ru/books/books.php?go=36.

CD/DVD

На нашем диске ты найдешь полные версии программ, описанных в этой статье, документацию и отличную книгу для души.

Назад на стр. 078-056-3  Содержание