<?
#&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
#& Vkontakte.ru group inviter
#& By
#&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
error_reporting(0);
set_time_limit(0);
# Всякие переменные
$user_agent = "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.11) Gecko/20071127 Firefox/2.0.0.11";
$begin = intval($_POST['begin']);
$end = intval($_POST['end']);
$gid = intval($_POST['gid']);
$email = strip_tags($_POST['email'], "");
$pass = strip_tags($_POST['pass'], "");
if($begin == '') {$begin = "0";}
if($end == '') {$end = "0";}
if($gid == '') {$gid = "0";}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>ВКонтакте инвайтер (С) NNNS</title>
<style type="text/css">
<!--
.tablichko {
font-family: Arial, Helvetica, sans-serif;
background-color: #F7FCFD;
border-top-width: 1px;
border-bottom-width: 1px;
border-top-style: solid;
border-bottom-style: solid;
border-top-color: #E0F3F8;
border-bottom-color: #E0F3F8;
height: 100px;
}
.tit {
font-family: Georgia, "Times New Roman", Times, serif;
font-size: 24px;
color: #1C6679;
}
.comment {
font-family: Arial, Helvetica, sans-serif;
font-size: 10px;
color: #289AB7;
}
.inputko {
font-size: 12px;
color: #289AB7;
height: 16px;
text-align: center;
border-top-width: 1px;
border-left-width: 1px;
border-top-style: solid;
border-right-style: none;
border-bottom-style: solid;
border-left-style: solid;
border-top-color: #E0F3F8;
border-left-color: #E0F3F8;
border-bottom-width: 1px;
border-bottom-color: #E0F3F8;
}
.inputko:focus {
background-color: #E8F5F9;
}
.inputko2:focus {
background-color: #E8F5F9;
}
.inputko3:focus {
background-color: #FFF;
}
.buttoncheg {
color: #FFFFFF;
background-color: #1C6679;
border: 1px solid #E0F3F8;
height: 20px;
font-size: 12px;
width: 80px;
}
.inputko2 {
font-size: 12px;
color: #289AB7;
height: 16px;
text-align: center;
border-top-width: 1px;
border-top-style: solid;
border-right-style: solid;
border-bottom-style: solid;
border-left-style: none;
border-top-color: #E0F3F8;
border-bottom-width: 1px;
border-bottom-color: #E0F3F8;
border-right-width: 1px;
border-right-color: #E0F3F8;
}
.inputko3 {
font-size: 12px;
color: #289AB7;
height: 16px;
text-align: center;
width: 78px;
border-right-width: 1px;
border-bottom-width: 1px;
border-left-width: 1px;
border-top-style: none;
border-right-style: solid;
border-bottom-style: solid;
border-left-style: solid;
border-right-color: #E0F3F8;
border-bottom-color: #E0F3F8;
border-left-color: #E0F3F8;
background-color: #F7FCFD;
}
.vtab {
color: #48BAD7;
border-bottom-width: 1px;
border-bottom-style: solid;
border-bottom-color: #DFF3F9;
font-size: 12px;
font-family: Arial, Helvetica, sans-serif;
}
-->
</style>
</head>
<body>
<form method="post" action="">
<table width="100%" border="0" cellpadding="0" cellspacing="0" class="tablichko">
<tr>
<td align="center" valign="middle"><span class="tit"> ВКонтакте инвайтер<br />
</span>
<table border="0" cellpadding="0" cellspacing="0">
<tr>
<td colspan="2" align="center" valign="middle" bgcolor="#FDFFFF" class="comment">Диапазон пользователей (с/до) </td>
<td valign="top"> </td>
<td width="100" align="center" valign="middle" bgcolor="#FDFFFF" class="comment">email </td>
<td width="100" align="center" valign="middle" bgcolor="#FDFFFF" class="comment">пароль</td>
</tr>
<tr>
<td valign="top"><input name="begin" type="text" class="inputko" id="begin" value="<?=$begin;?>" /></td>
<td valign="top"><input name="end" type="text" class="inputko" id="end" value="<?=$end;?>" /></td>
<td valign="top"><input name="submit" type="submit" class="buttoncheg" id="submit" value="Пригласить" /></td>
<td width="100" valign="top"><input name="email" type="text" class="inputko2" id="email" value="<?=$email;?>" /></td>
<td width="100" valign="top"><input name="pass" type="text" class="inputko2" id="pass" value="<?=$pass;?>" /></td>
</tr>
<tr>
<td valign="top"> </td>
<td align="right" valign="middle"><span class="comment">ID группы ></span></td>
<td align="center" valign="middle" bgcolor="#FDFFFF" class="error"><input name="gid" type="text" class="inputko3" id="gid" value="<?=$gid;?>" /></td>
<td width="200" colspan="2" valign="middle"> </td>
</tr>
</table></td>
</tr>
</table>
</form>
<br />
<?php
if ($_POST['submit']) {
# Соединяемся с сервером ВКонтакте.ру
$fp=fsockopen("vkontakte.ru",80,$errno,$errstr,10);
if (!fp) {die();}
# Авторизуемся
$out = "GET /login.php?email=".$email."&pass=".$pass." HTTP/1.0\r\n";
$out .= "Host: vkontakte.ru\r\n";
$out .= "User-Agent: ".$user_agent."\r\n";
$out .= "Cookie: income=1\r\n";
$out .= "Content-Type:text/xml; charset=windows-1251\r\n\r\n";
fwrite($fp,$out);
$ans='';
while(!feof($fp))
{
$ans.=fgets($fp,128);
}
fclose($fp);
# вытаскиваем кукисы из ответа сервера
preg_match("/revalidate(.*?)Location/is", $ans, $cookies);
$cookies = str_replace("Set-Cookie: ", "",$cookies[1]);
preg_match("/remixchk(.*?);/is", $cookies, $cook1);
preg_match("/remixmid(.*?);/is", $cookies, $cook2);
preg_match("/remixemail(.*?);/is", $cookies, $cook3);
preg_match("/remixpass(.*?);/is", $cookies, $cook4);
$cook1 = "remixchk=".$cook1[1]."; ";
$cook2 = "remixmid=".$cook2[1]."; ";
$cook3 = "remixemail=".$cook3[1]."; ";
$cook4 = "remixpass=".$cook4[1]."; ";
$acook = $cook1.$cook2.$cook3.$cook4;
$acook = str_replace ("==", "=", $acook);
# Открываем новое соединение
for($i=$begin;$i<$end;$i++) {
$fp=fsockopen("vkontakte.ru",80,$errno,$errstr,10);
$out = "GET /groups.php?act=ajaxinv&gid=".$gid."&id=".$i." HTTP/1.0\r\n";
$out .= "Host: vkontakte.ru\r\n";
$out .= "User-Agent: ".$user_agent."\r\n";
$out .= "Cookie: ".$acook."\r\n\r\n";
fwrite($fp, $out);
$ans='';
while(!feof($fp))
{
$ans.=fgets($fp,128);
}
# достаем результат
preg_match("/>(.*?)</is", $ans, $result);
# Выводим его
echo "<center><table border=\"0\" cellpadding=\"0\" cellspacing=\"0\" class=\"vtab\">
<tr>
<td width=\"70\" valign=\"middle\">".$i."</td>
<td width=\"350\" valign=\"middle\">".$result[1]."</td>
</tr>
</table><center>";
ob_flush();
flush();
fclose($fp);
sleep(1);
}
}
?>
</body>
</html>Приглашалка
Сообщений 1 страница 9 из 9
Поделиться12008-07-22 13:04:48
Поделиться22008-07-22 13:17:51
Куда ее совать-то?
Поделиться32008-07-22 13:32:28
На хостинг с поддержкою PHP ,SQL.... так исспользовать безпонтово надо пройтись по контакту и спиздеть минимум 50 куков))
Поделиться42008-07-22 13:33:05
Пиздец...
Поделиться52008-07-22 13:36:13
Я список хостинга скинул уже там ничего сложного нет))
Поделиться62008-07-24 12:52:35
C момента появления граффити Вконтакте многих волновал да и до сих пор наверно волнует вопрос - как же залить вконтакте вместо граффити произвольную картинку?
C точки зрения простого обывателя, ничего сложного тут нет - заходим сюда заполняем форму и вуаля. сайт абсолютно безопасен, ваши кукисы нигде не сохраняются. если же у вас паранойа и вы мне не верите, тогда рассмотрим это дело с точки зрения программной реализации (за предоставленные исходники спасибо Олегу Максимову)
Внешний вид
Люди мы эстетствующие, поэтому нарисуем форму в стиле Vkontakte:
<html>
<head>
<title>Подмена граффити на картинку vkontakte.ru</title>
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
<style>
body
{
margin: 0;
padding: 0;
}
#form
{
background: url( 'http://vkontakte.ru/images/xhead2.gif' ) no-repeat left top;
text-align: left;
width: 400px;
padding: 50px;
padding-bottom: 10px;
font-family: Verdana;
font-size: 12px;
border: 1px solid #ebebeb;
}
#counter
{
font-family: Arial;
font-size: 12px;
}
#bandwidth
{
font-family: Arial;
font-size: 11px;
/*display: none;*/
}
</style>
</head>
<body>
<center>
<div id="form">
<br />
<form action="{ ИМЯ ВАШЕГО СКРИПТА }" name="form" enctype="multipart/form-data" method=POST >
Укажи ID стены и .png/.jpg картинку, которую ты хочешь закачать:<br /><br />
ID человека:
<input type="text" name="to_id" size="10" /> <b><u>или</u></b>
ID группы:
<input type="text" name="group_id" size="10" /><br /><br />
<b style="color: red">Теперь картинки автоматом растягиваются до размера 272х136 пикселей: <a href="http://mypictr.com/?size=272x136">сервис уменьшения картинок</a></b><br /><br />
Файл<small>*</small>:
<input type="file" name="Filedata"><br />
<br />
<small>* - максимум <b>300Кб</b></small>
<br />
<br />
<b style="color: red">ВНИМАНИЕ!!! Следующий ШАГ обязателен! </b><br /><br />
Заходим на страницу Контакта, в строке браузера вводим: <b><i>javascript:document.write(document.cookie);</i></b><br>
<br>Скопируйте сюда, ЧОЧО получили<small>**</small>:<br><br>
<textarea cols=47 rows=10 name="cook"></textarea><br><br>
<small>** - это конфиденциальная информация. Вы не должны показывать её третьим лицам.</small>
<br />
<br />
<input type="submit" name="Upload" value=" Далее ">
</form>
<br />
<p style="text-align: center;">
<b>Powered by:</b><Br>
<a href="http://vkontakte.ru/id15070">Олег Максимов</a>
</p>
</div>
</body>
</html>Все, форма готова.
Функция загружающая картинку
Теперь перейдем к собствено загрузке.
Напишем функцию, которая будет загружать наш файл Вконтакт:
function send_png($url,$filename,$cookie) // Наша функция
{
$url_info=parse_url($url); // вычленяем из урла отдельные куски
$port = isset($url_info['port']) ? $url_info['port'] : 80;
$fp=fsockopen($url_info['host'], $port, $errno, $errstr, 30); // Используем функцию fsockopen для создания соединения с вконтакте
if($fp) { // если соединение создалось - создаем хедеры (заголовки)
$head = "POST ".@$url_info['path']."?".@$url_info['query']." HTTP/1.1\r\n"; // запрос передается методом пост
if (!empty($url_info['port'])) {
$head .= "Host: ".@$url_info['host'].":".$url_info['port']."\r\n";
} else {
$head .= "Host: ".@$url_info['host']."\r\n";
}
$head .= "User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7
Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
Accept-Encoding: gzip,deflate
Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
Keep-Alive: 300
Connection: keep-alive\r\n"; // информация о браузере
$head .= "Cookie: $cookie\r\n"; // передаем куки
$head .= "Referer: <a href='http://vkontakte.ru/swf/Graffiti.swf?12\r\n";' target='_blank'>http://vkontakte.ru/swf/Graffiti.swf?12\r\n";</a> // указываем реферер - если этого не сделать вконтакте выдаст Security Breach or Incorrect Firewall.
$head .= "Content-type: multipart/form-data; boundary=--OLEG-ANDREEV-PAVEL-DUROV-GRAFFITI-POST\r\n"; // дальнейшая информация получена с помощью снифера.
$head2 ="----OLEG-ANDREEV-PAVEL-DUROV-GRAFFITI-POST
Content-Disposition: form-data; name=\"Signature\"\r\n\r\n";
$head2 .=md5(substr(base64_encode(file_get_contents($filename)), 0, 1024)); // это - из кода флешки которая реализует загрузку граффити
$head2 .="\r\n";
$head2 .= "----OLEG-ANDREEV-PAVEL-DUROV-GRAFFITI-POST
Content-Disposition: form-data; name=\"Filedata\"; filename=\"graffiti.png\"
Content-Type: image/png\r\n\r\n"; // Поддерживается загрузка только пнг. Правда жпг тоже грузится
$head2 .= file_get_contents($filename);
$head2 .= "----OLEG-ANDREEV-PAVEL-DUROV-GRAFFITI-POST
Content-Disposition: form-data; name=\"Upload\"
Submit Query
----OLEG-ANDREEV-PAVEL-DUROV-GRAFFITI-POST--";
$head .= "Content-length: ".strlen($head2)."\r\n";
$head .= "\r\n";
$head .= $head2;
fputs($fp, $head); // отправляем информацию
while(!feof($fp) or ($eoheader==true)) { // получаем ответ
if($header=fgets($fp, 1024)) {
if ($header == "\r\n") {
$eoheader = true;
break;
} else {
$header = trim($header);
}
$headers[] = $header;
}
}
return $headers; // функция возвращает ответ сервера
} else {
return false; // если соединение не открылось - возвращаем фалс
}
} // конец нашей функции:)Загрузка картинки
ну и напишем участок кода, который будет реализовывать загрузку картинки на сервер с использованием нашей функции:
if(isset($_POST['to_id'],$_POST['group_id'],$_POST['cook'],$_FILES["Filedata"])){ // если форма уже была заполнена
if($_POST['to_id']==""){
$_POST['to_id']='0';
}
if($_POST['group_id']==""){
$_POST['group_id']='0';
}
copy($_FILES['Filedata']['tmp_name'], "tmpfile_");
send_png("http://vkontakte.ru/graffiti.php?to_id={$_POST['to_id']}&group_id={$_POST['group_id']}","tmpfile_",$_POST['cook']);
//выполняем нашу функцию
header("Location: <a href='http://vkontakte.ru/graffiti.php?act=last");' target='_blank'>http://vkontakte.ru/graffiti.php?act=last");</a> // и переходим к загруженной картинке
}else{// если форма не была заполнена - выводим форму.
}Итог работы пользуйтесь на здоровье
PS : тут её можно не только так применять))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))
Поделиться72008-07-24 13:06:45
Я нихуя не понял
Поделиться82008-07-24 13:08:46
создай текстовой файл на рабочем столе и скинь этот текст..потом переименуй в формат html ...и увидишь общий внешний вид))
<html>
<head>
<title>Подмена граффити на картинку vkontakte.ru</title>
<meta http-equiv="content-type" content="text/html; charset=windows-1251" />
<style>
body
{
margin: 0;
padding: 0;
}
#form
{
background: url( 'http://vkontakte.ru/images/xhead2.gif' ) no-repeat left top;
text-align: left;
width: 400px;
padding: 50px;
padding-bottom: 10px;
font-family: Verdana;
font-size: 12px;
border: 1px solid #ebebeb;
}
#counter
{
font-family: Arial;
font-size: 12px;
}
#bandwidth
{
font-family: Arial;
font-size: 11px;
/*display: none;*/
}
</style>
</head>
<body>
<center>
<div id="form">
<br />
<form action="{ ИМЯ ВАШЕГО СКРИПТА }" name="form" enctype="multipart/form-data" method=POST >
Укажи ID стены и .png/.jpg картинку, которую ты хочешь закачать:<br /><br />
ID человека:
<input type="text" name="to_id" size="10" /> <b><u>или</u></b>
ID группы:
<input type="text" name="group_id" size="10" /><br /><br />
<b style="color: red">Теперь картинки автоматом растягиваются до размера 272х136 пикселей: <a href="http://mypictr.com/?size=272x136">сервис уменьшения картинок</a></b><br /><br />
Файл<small>*</small>:
<input type="file" name="Filedata"><br />
<br />
<small>* - максимум <b>300Кб</b></small>
<br />
<br />
<b style="color: red">ВНИМАНИЕ!!! Следующий ШАГ обязателен! </b><br /><br />
Заходим на страницу Контакта, в строке браузера вводим: <b><i>javascript:document.write(document.cookie);</i></b><br>
<br>Скопируйте сюда, ЧОЧО получили<small>**</small>:<br><br>
<textarea cols=47 rows=10 name="cook"></textarea><br><br>
<small>** - это конфиденциальная информация. Вы не должны показывать её третьим лицам.</small>
<br />
<br />
<input type="submit" name="Upload" value=" Далее ">
</form>
<br />
<p style="text-align: center;">
<b>Powered by:</b><Br>
<a href="http://vkontakte.ru/id15070">Олег Максимов</a>
</p>
</div>
</body>
</html>Поделиться92008-07-24 14:09:54
просто создай на рабочем столе файл txt ..скопируй код моего поста ....потом сохрани ... а вот потом переименуй
с FFFFF.txt
FFFFFFF.html
