ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2
Antichat снова доступен.
Форум Antichat (Античат) возвращается и снова открыт для пользователей. Здесь обсуждаются безопасность, программирование, технологии и многое другое. Сообщество снова собирается вместе.
Новый адрес: forum.antichat.xyz
Вернуться   Форум АНТИЧАТ > ИНФО > Статьи > Авторские статьи
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

[Обзор] Уязвимостей \ Багов вконтакте.ру
  #1  
Старый 24.03.2008, 23:14
Аватар для Shawn1x
Shawn1x
Banned
Регистрация: 24.08.2007
Сообщений: 201
Провел на форуме:
983157

Репутация: 424
Отправить сообщение для Shawn1x с помощью ICQ
По умолчанию [Обзор] Уязвимостей \ Багов вконтакте.ру

[Обзор] Уязвимостей \ Багов вконтакте.ру
Сайт: http://www.vkontakte.ru
Разработчик: Павел Дуров

ВКонтакте.ру - сетевой проект, который поможет Вам узнать больше о людях,
которые Вас окружают,а также найти потерянных друзей и поддерживать с ними связь.
Вы сможете делиться информацией, ограничивая круг лиц, которым она будет доступна.
На данный момент является самым посещаемым ресурсам и имеет более 10 000 пользователей

[Введение]
В этой статье будет рассказано о хитростях, багах, и уязвимостях сервиса вконтакте.ру

[Смотреть закрытые Профили \ Фото \ Видео]

Смотреть информацию закрытого профиля(фотографии, видео, заметки и т.д.) следующим оброзом:
1) Нужно знать ID человека
2) Наведите курсор "Друзья xxx" и строке появится примерно следующиq текст:
http://vkontakte.ru/friend.php?act=add&id=12345678 , где последние цифры как раз и есть ID
Потом нужно вставить этот ID в строки:
Фотографии:
http://vkontakte.ru/photos.php?act=user&id=ID ( В нашем случае 12345678 )
Фотоальбомы:
http://vkontakte.ru/photos.php?id=ID ( В нашем случае 12345678 )
Видеозаписи:
http://vkontakte.ru/video.php?id=ID ( В нашем случае 12345678 )
Заметки:
http://vkontakte.ru/notes.php?id=ID ( В нашем случае 12345678 )
В некоторых местах можно оставлять комментарии

Но этот способ не всегда действует, так как информация может быть защищена настройками приватности
(скрытые фотографии).
Так что рассмотрим еще один способ:
Возьмем возьмем фотографию Дурова с подругой ( http://vkontakte.ru/photos.php?act=show&id=13780_39723&uid=1 ), но как мы видем фотография скрыта,
но мы можем взять ее "preview" ( http://cs01.vkontakte.ru/u13780/5273/m_1c6b8d221d.jpg ). смотрим в свойства рисунка и меняем букву “m” в имени рисунка
на букву “х” без кавычек. теперь мы получаем ссылку и смотрим на фотографию Дурова ( http://cs01.vkontakte.ru/u13780/5273/x_1c6b8d221d.jpg )


[Улучшенный просмотр фотографий]

http://citex.ru/vk/vkalbphoto.js
Данный скрипт создаёт иконку над фотографиями при нажатие на которую открывается сама фотография, а не страница с комментариями!
Для этого нужно дождаться полной загрузки страницы альбома

[Загрузка Музыки \ Видео на компьютер]
1) Рассмотрим вариант с музыкой, ее можно загрузить с помощью программ и скриптов!
Скрипты:

Описание:

Скрипт для GreaseMonkey или браузера Opera
Добавляет около кнопок прослушивания музыки ссылку для скачивания и ссылку для быстрого поиска слов песни.
Для работы нужен Firefox с установленным дополнением GreaseMonkey или Opera.
Если вы используете Opera, то полученный файл надо будет сохранить в тот каталог,
который выбран в “Tools > Preferences > Advanced > Content > JavaScript option > User JavaScript files”

PHP код:
// ==UserScript==
// @name vkontakte music download
// @namespace http://vkontakte.net.ru
// @description Music download for vkontakte.ru
// @include http://vkontakte.ru/*
// ==/UserScript==


function addDownload(img) {
var 
str="";
if (
img.wrappedJSObject) {
str=img.wrappedJSObject.onclick.toString();
} else {
str=img.onclick.toString(); //opera workaround
}
var 
re=/operate\((\d+)[^0-9]+(\d+)[^0-9]+(\d+),[^0-9a-zA-Z]+([0-9a-zA-Z]+)/;
var 
arr=re.exec(str);
//operate(209145,1044,362847,'db5a6cba31',194);
//http://cs1044.vkontakte.ru/u362847/audio/db5a6cba31.mp3
var td=img.parentNode;
var 
addon=document.createElement("a");
var 
user=arr[3];
if (
user<100000) {
user=parseInt(user)+100000;
user=(user.toString()).substr(1);
}
addon.setAttribute("href","http://cs"+arr[2]+".vkontakte.ru/u"+user+"/audio/"+arr[4]+".mp3");
addon.innerHTML="download";
td.appendChild(addon);
}

function 
addDownloads() {
var 
imgs=document.getElementsByTagName("img");

for (var 
i=0;i<imgs.length;i++) {
if (
imgs[i].className=="playimg") {
addDownload(imgs[i]);
}
}
}

function 
addLyric(span) {
var 
title=span.innerHTML;
if (
span.getElementsByTagName("a").length>0) {
title=span.getElementsByTagName("a")[0].innerHTML;
}
var 
parent=span.parentNode;
var 
artb=parent.getElementsByTagName("b")[0];
var 
artist=artb.innerHTML
if (
artb.getElementsByTagName("a").length>0) {
artist=artb.getElementsByTagName("a")[0].innerHTML;
}
var 
newdiv=document.createElement("div");
var 
addon=document.createElement("a");
// addon.setAttribute("href","http://lyrc.com.ar/en/tema1en.php?artist="+artist+"&songname="+title);
addon.setAttribute("href","http://www.lyricsplugin.com/wmplayer03/plugin/?artist="+encodeURIComponent(artist)+"&title="+encodeURIComponent(title));
addon.setAttribute("target","_blank");
addon.innerHTML="lyrics";
newdiv.appendChild(addon);
newdiv.className="duration";
parent.parentNode.appendChild(newdiv);
}

function 
addLyrics() {
var 
spansdocument.getElementsByTagName("span");
re=/title\d+/;
for (var 
i=0;i<spans.length;i++) {
if (
re.test(spans[i].id)) {
addLyric(spans[i]);
}
}
}

addLyrics();
addDownloads(); 

Сохранить в vkontakte.music.js


Грабер музыки с вконтакта:

PHP код:
<html> 
<body> 
<center> 
<form action="graber.php" name="main" method="post"> 
<input type="text" name="link" size="80"> 
<input type="submit" value="Грабить!"> 
<form> 


<?php 
set_time_limit
(0);                                                   //убираем ограничение времени выполнения скрипта 
if(@$_POST['link']!=""){ 

$link $_POST['link'];                                               //Указываем ссылку 

$toparse=""

preg_match("/^(http:\/\/)?([^\/]+)/i",$link,$host);                    //Отделяем  доменное имя  

$req "GET ".$link." HTTP/1.1\r\n";                                                                          //Формирование  заголовка запроса 
$req .="Host: ".$host[2]."\r\n";                                                                                             //   
$req .="Cookie: audio_vol=80;remixchk=5;remixemail=;remixmid=;remixpass=;#10\r\n";    //Передача кукис 
$req .="Connection: Close\r\n\r\n";                                                                                           // 

                                  
$socket fsockopen($host[2],80);                                     //Открываем сокет на 80й порт серва 

fwrite($socket,$req);                                                 //Отправляем запрос  

while(!feof($socket)){                                                 // 
    
$toparse.=fgets($socket,128);                                       //Получаем тело страницы по 128 байт 
    
}                                                                // 
     
fclose($socket);                                                     //Затрываем сокет 

$mask_link =array('return operate(',');');                             //Маска 

preg_match_all("/(".$mask_link[0].")(.*)(".$mask_link[1].")/i",$toparse,$parsed_links);  //Выбираем ссылки 



foreach($parsed_links[3] as $link_str){                                 //Берем каждый елемент масива в переменную $link_str 
     
    
$pattern=array("(",")","'");                                     //Что заменяем 
    
$replace=array("","","");                                         //Чем заменяем 
     
    
$replaced=str_replace($pattern,$replace,$link_str);              //Убираем скобки 
    
$link_mas=explode(",",$replaced);                                 //Преобразуем строку где разделитель запятая в масив 
     
echo "<a href=\"http://cs".$link_mas[1].".vkontakte.ru/u".$link_mas[2]."/audio/".$link_mas[3].".mp3\">";    //Начало ссылки 

    
$mask_name=array($link_mas[0],'<\/span>');                         //Маска поиска Имени 
     
    
preg_match_all("/(".$mask_name[0].")(.*)(".$mask_name[1].")/i",$toparse,$parsed_names);   // Выбираем имена 

    
$pattern=array("\">","</b>","<span id=\"title$link_mas[0]");                                //Что заменяем 
    
$replace=array("","","");                                                                    //Чем заменяем 
     
    
$replaced=str_replace($pattern,$replace,$parsed_names[2][0]);                             //Убираем мусор 

     
    
echo $replaced."</a><br>";                                                                  //Конец ссылки 

}     
?> 


</center> 
</body> 
</html>
Еще один скрипт:
PHP код:
javascript:function operate(konfuze,loves,you,all_,xP){you=you.toStrin  g(10);while(you.length<5){you='0'+you;}document.getElementById('audio'+ko  nfuze).innerHTML='<div><a href="http://cs'+loves+'.vkontakte.'+'ru/u'+you+'/audio/'+all_+'.mp3">Cкачать '+document.getElementById('performer'+konfuze).inn  erHTML+' - '+document.getElementById('title'+konfuze).innerHT  ML+'</a></div><br />';} 


2) Рассмотрит вариант для скачивания видео, на данный момент самая актуальная программа это VKMusic - которая
позволяет автоматизировать поиск аудиозаписей в контакте и скачивание их на ваш компьютер. Авторизации не требуется(Но для более удобного и быстрого
скачивания рекомендуется).


Скачать \ Download
Так же имеются скрипты для скачивания видео:
Для FireFox :
http://www.mgupp.ru/2729/files?get=unplugvkontakte.xpi
http://www.mgupp.ru/2729/files?get=vk.xpi

Для Opera:
http://www.mgupp.ru/2729/files?get=vk2u.js

[Вступить во все группы данного пользователя]
1)Сам скрипт:
PHP код:
<form id="param"
<
table width="500" height="101" border="0"
<
tr
<
td width="112">with</td
<
td width="378"><input name="minZn" type="text" value="1"></td
</
tr
<
tr
<
td>to</td
<
td><input name="maxZn" type="text" value="999999"></td
</
tr
<
tr
<
td>adress</td
<
td><input name="adress" type="text" value="http://vkontakte.ru/groups.php?act=enter&gid=" size="50"></td
</
tr
<
tr
<
td>&nbsp;</td
<
td><input name="button" type="button" onClick="GoHack()" value="Vkontakte must die!!(Go hack)"
<
input name="button2" type="button" onClick="StopHack()" value="STOP"></td
</
tr
</
table
</
form
<
script language="javascript"
function 
StopHack() 

hackwindow.close(); 


function 
HackWindowNewlocation(startendcurrent

var 
time=4000
var 
domen=document.getElementById("param").adress.value
var 
url=""
start2=start
current2=current
end2=end
if(
current2==start2){hackwindow=window.open("http://google.ru","hack");} 
if ((
current2-1)==end2) {return ;} 
current2++; 
url=domen+current.toString(); 
window.hackwindow.location=url.toString(); 
setTimeout("HackWindowNewlocation(start2, end2, current2)",time); 


function 
GoHack() 

var 
start=document.getElementById("param").minZn.value;  
var 
end=document.getElementById("param").maxZn.value;  
var 
current=start
HackWindowNewlocation(start,end,current); 

</
script
2) Его реализаци. можно посмотреть здесь: http://blog.folone.org.ua/MOCK=130
 
Ответить с цитированием

  #2  
Старый 24.03.2008, 23:16
Аватар для Shawn1x
Shawn1x
Banned
Регистрация: 24.08.2007
Сообщений: 201
Провел на форуме:
983157

Репутация: 424
Отправить сообщение для Shawn1x с помощью ICQ
По умолчанию

[Подмена граффити на рисунок на стенах пользователей]
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$errstr30); 
        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)), 01024)); 
            
$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($fp1024)) { 
                    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
 
Ответить с цитированием

  #3  
Старый 24.03.2008, 23:35
Аватар для Lancellot
Lancellot
Участник форума
Регистрация: 09.08.2006
Сообщений: 157
Провел на форуме:
1583810

Репутация: 56
По умолчанию

+1 не плохо было бы создать отдельную ветку форума vkontakte.ru
или antichat.vkontakte.ru
 
Ответить с цитированием

  #4  
Старый 24.03.2008, 23:46
Аватар для desTiny
desTiny
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме:
3008839

Репутация: 1502


По умолчанию

сорри, но
а) где здесь уязвимости?
б) где здесь баги?
в) а не является ли сие повторением Isis'овских Tips and Tricks?
__________________
Bedankt euch dafür bei euch selbst.

H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
 
Ответить с цитированием

  #5  
Старый 24.03.2008, 23:54
Аватар для desTiny
desTiny
Reservists Of Antichat - Level 6
Регистрация: 04.02.2007
Сообщений: 1,152
Провел на форуме:
3008839

Репутация: 1502


По умолчанию

Цитата:
Сообщение от baltazar  
что-то непонял,это типа скопировал все баги,вставил в тему и красивенько оформил?)
просто все что тут есть,давно было сказано на форуме

что ты понимаеш под копирайтом?
Новое оформление, видимо...
__________________
Bedankt euch dafür bei euch selbst.

H_2(S^3/((z1, z2)~(exp(2pi*i/p)z1, exp(2pi*q*i/p)z2)))=Z/pZ
 
Ответить с цитированием

  #6  
Старый 24.03.2008, 23:56
Аватар для CaNNabi$
CaNNabi$
Познающий
Регистрация: 21.01.2008
Сообщений: 85
Провел на форуме:
839509

Репутация: 338
Отправить сообщение для CaNNabi$ с помощью ICQ
По умолчанию

Произошла ошибка безопасности при попытке добавить пользователя в друзья.
=(
хотел сделать вот это
Цитата:
Наведите курсор "Друзья xxx" и строке появится примерно следующиq текст:
http://vkontakte.ru/friend.php?act=add&id=12345678
 
Ответить с цитированием

  #7  
Старый 25.03.2008, 00:12
Аватар для iddqd
iddqd
Banned
Регистрация: 19.12.2007
Сообщений: 924
Провел на форуме:
4192567

Репутация: 2145


По умолчанию

Мля, вчера еще грозился обзор написать... Я думал, реально уязвимости будут...
Лажа
 
Ответить с цитированием

  #8  
Старый 27.03.2008, 00:19
Аватар для BlackCats
BlackCats
Постоянный
Регистрация: 01.02.2006
Сообщений: 970
Провел на форуме:
9254548

Репутация: 1942


По умолчанию

бредятина, с фотками - как из превьюхи в норм посмотреть - непашет, точнее пашет только у дурова.
 
Ответить с цитированием

  #9  
Старый 12.04.2008, 17:25
Аватар для Shawn1x
Shawn1x
Banned
Регистрация: 24.08.2007
Сообщений: 201
Провел на форуме:
983157

Репутация: 424
Отправить сообщение для Shawn1x с помощью ICQ
По умолчанию

Там Xss активка в группах
 
Ответить с цитированием

  #10  
Старый 12.04.2008, 23:26
Аватар для Foxtrot1
Foxtrot1
Познающий
Регистрация: 27.03.2008
Сообщений: 89
Провел на форуме:
484321

Репутация: 81
По умолчанию

эти уязвимости - лажа нет ниче нового ...
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[Обзор уязвимостей в форумных движках] Grey Форумы 48 28.12.2009 20:03
Использование регулярных выражений при поиске уязвимостей php Macro Авторские статьи 24 11.02.2008 23:41
Классификация уязвимостей flintstone Статьи 1 16.01.2008 18:06



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ