![]() |
Новые cookies [В]контакте...Их секреты и хитрости в одной теме!
Здравствуйте уважаемые ачатовцы,сейчас актуальный вопрос о новых куках вконтакте,видел не одну тему где выясняли и спорили насчёт них,вот хочу рассказать об своих экспериментах с ними и чтобы не создавались новые темы по этому поводу.
Всем известно что после 13.09.09 теперь в куках храниться только remixsid,но и в нём то не без хитрости,я посидел и пробивал разные способы входа по ним,вот такие неутешительные результаты с моих тестов: Скажу сразу,remixsid имеет привязку к вашему IP,но и не только к нему,и эта привязка скорее для удобства а не для зашиты,прочтя дальше мои тесты и выводы Вы в этом убедитесь. ;) Я пробовал сменять IP,но не железо,а именно IP...Делал так: 1.Логинюсь вконтакте. 2.Включаю прокси,который маскирует мой IP. 3.Жму F5 (обновляю страницу). После этих действий идут запросы между вашим компьютером и вконтакте,а именно: 1.GET запрос к http://login.vk.com/?vk= В ответ получает это: Код HTML:
<html><head><meta http-equiv='content-type' content='text/html; charset=windows-1251' /></head><body onload="document.getElementById('l').submit();"><form id='l' method='post' action='http://vkontakte.ru/login.php?op=slogin'><input type='hidden' name='s' id='s' value='17b1bfber144d30b13d2557c29c141fd61f1e2843e95ed11f396efa5'></form></body></html>2.POST запрос к http://vkontakte.ru/login.php?op=slogin с данными,переданными нам в первом шаге,а именно 17b1bfber144d30b13d2557c29c141fd61f1e2843e95ed11f3 96efa5 и в ответ получаем это: Код HTML:
<html></html>3.Потом шлётся POST запрос уже к вашей странице,с вашим ID в конце,а в нашем случае к http://vkontakte.ru/id1234 В запросе указаны такие данные: id: 1234 IP_ADDRESS: 10.0.13.3 request_method: get pda : и в ответ получаем уже нашу собственную страницу вконтакте,на которой мы и были. Это мы разобрали какие действия контакт производит после смены IP на одном и том же компе,теперь рассмотрим случай который нам более интересен,заберём куки с чужого компа и вставим себе. Теперь выполняем эти действия: 1.Логинимся на другом компе. 2.Берём получивший remixsid. 3.Подменяем его на своём компе и жмём F5 (Обновляем страницу). Контакт делает следующие манипуляции: 1.После обновления страницы получаем этот ответ: Код HTML:
<html>Получает ответ: Код HTML:
<html><head><meta http-equiv='content-type' content='text/html; charset=windows-1251' /></head><body onload="document.getElementById('l').submit();"><form id='l' method='post' action='http://vkontakte.ru/login.php?op=slogin'><input type='hidden' name='s' id='s' value='http://vkontakte.ru/login.php?op=slogin'></form></body></html>3. POST запрос к http://vkontakte.ru/login.php?op=slogin с данными 482eec34a42374aab06e2766039161f6db292550c115f5c7da ac1908 В ответ получаем это: Код HTML:
<html></html>4. Отправляет POST запрос уже к вашей странице,с вашим ID в конце,а в нашем случае к http://vkontakte.ru/id1234 В запросе указаны такие данные: id: 1234 IP_ADDRESS: 10.11.13.11 request_method: get pda : и в ответ получаем старицу которой мы сменили remixsid, тоисть не та страница,которую мы взяли с другого компа а та,в которой мы билы до этого залогинены... То есть доступ к странице мы не получили,а нас тупо переадресовало в нашу,родную страницу...Самое хитрое то,что мы то сменяли уже remixsid в куках,а вот нам его уже от страницы контакт новый сам выдал,то ли по IP то ли я не знаю по чём... Выводы 1.Заходить вконтакте с одного и того же компа но с другим IP можно. 2.Взять куки с чужого компа и зайти со своего невозможно,по крайней мере не подменяя привязки,которой я пока еще не знаю. 3.remixsid имеет привязку,и не одну,к IP привязка есть 100% но суть её не в том чтоб не могли зайти с другого компа,а чтоб получить новый remixsid на эту страницу для уже другого IP,если всё же определит что последний вход в этот профиль был именно с этого компа. Если Вы заметили еще какие то привязки или еще что то на подобии,описывайте здесь,буду рад любой помощи и новых тестов этих зависимостей вконтакте. |
Что можете сказать по поводу параметров l и p в cookies?
Также попробовал схитрить. Попросил свежую куку, зашел на свою страницу вконтакте, изменил remixsid и обновил. Действительно - переадресация на свою же страницу. Я думаю, при первом GET запросе на http://login.vk.com/?vk= идет проверка - авторизовывались ли с помощью логина / пароля для чужого аккаунта с этого IP. Если ранее не авторизовывались - идем нафиг. Это можно объяснить недавним экспериментом. Проверял на днях базу логинов / паролей. Разумеется, по разу авторизовывался на каждый аккаунт, с сохранением кук. Так вот сегодня куки работают, прекрасно себя чувствуют. Также можно попробовать кое-что сменить: id: id нашей страницы меняем на id чужой (вот только как его достать) IP_ADDRESS: 10.11.13.11 request_method: get pda : |
Цитата:
Цитата:
Цитата:
2.Мне лично кажется что подмена абсолютно никакого толку не даст...Потому как привязка к машине,а это просто проверка на капчу или что либо...Но это не проверено...Узнать бы к чему еще вяжется акк,было бы вовсе чудесно... |
Mixon, вы уверены, что IP сменили? Попробуйте с совершенно левого компьютера - все и выяснится.
Далее можно попытаться подменять все заголовки запроса. Стандартный метод :) если уж и это не получится - искать баги в самой системе авторизации, более чем уверен, что они там есть. Все это, конечно, 99% результата не даст, но попытка - не пытка. |
Цитата:
IP я точно сменил,я сам программист и уж поверьте,я могу нормально поставить прокси,которая маскирует мой IP полностью... |
Mixon, не думаю, что из-за железа. Я, все же, грешу на IP.
Подумаем логически - какие данные может получить веб-форма? Заголовки запроса, разве что... Не знаю. Можно попробовать сэмулировать полностью заголовки запроса, банально скопировать, и посмотреть, что будет. |
Цитата:
Код:
POST /login.php HTTP/1.1Так что привязки именно к железу быть не может. P.S. Снифайте трафик, сравнивайте пакеты и ищите отличия. |
А может и так..(
:confused: :confused: :confused: :rolleyes: :rolleyes: :rolleyes: |
GlooK, это все понятно. Однако, когда нет отличий, грешить приходится именно на IP адрес.
Грубо говоря - на компьютере, где был залогинен аккаунт, через idhttp грузим http://vkontakte.ru, перед этим сунув куки. На компьютере, где ни разу не был залогинен аккаунт, через idhttp грузим http://vkontakte.ru, перед этим сунув куки. Первый вариант - редирект на нужную страницу, второй - редирект на главную. |
Цитата:
Вот смотри,есть два компьютера,разных,пусть назовём их Linux и Windows... Если ты вошел в акк с Linux,и сменил на нём IP,то тебя переадресует на твою страницу. Но если ты вошел с Windows на этот же акк,взял сессию и вставил в Линукс (на котором уже был когда то вход в этот профиль) то тебя выбросит на главную... Их привязка идёт к одному компьютеру,но к разным его IP! Цитата:
|
Mixon, напишите по пунктикам, что можно сэмулировать, если есть время и желание, будем пробовать.
|
Есть параметры которые нельзя никак подделать,например IP свой как таково ты не поставишь...
Вот сейчас сижу и роюсь в phpinfo,и вот какой параметр мну заинтересовал,имя компьютера,только тут непонятно,это имя компьютера который подключился или имя компьютера на котором стоит сервер... А как таково то надо думаю мутить с хидерами пока,остально всёравно походу подменить невозможно как таково... Сейчас вот такая идея в голову стукнула...А серверу даты создания куков доступны??? Если да,то могли сравнивать,когда создан кук на одном компьютере а когда на другом... |
Mixon, подменить возможно все, было бы желание (имхо). Вопрос в целесообразности :)
|
Ну ну,подмени свой IP на 123.123.123.123 я посмотрю)))
|
Mixon, зачем? ;) Я ведь говорю - вопрос в целесообразности телодвижений :)
|
Не понял...ну мы вовсе сошли с темы...лучше давай с ссид что то мутить а не тут обговаривать фиг знай что))
|
Mixon, это да. Сегодня еще раз попробую пошагово все отпарсить, все что утекает и притекает обратно, потом сэмулировать на другом, рабочем ПК. Результаты опишу здесь.
|
Ок,поддерживаешь идею,молодца))
|
было б не плохо реализовать скриптик java как был раньше)))
только как(( |
Цитата:
Что он такого определяет, о чем я не сказал выше? Если открыть пакет в снифере полностью, так чтобы отображались все протоколы, в которые "завернут" HTTP запрос, то можно увидеть что он передает. Кроме как SOURCE IP, SOURCE PORT, DESTINATION IP, DESTINATION PORT ничего полезного там нет. Такие параметры как mac-адрес убираются на первом рубеже провайдера. Поправьте, если не так... |
Mixon - молодец, что провел изыскания.
теме ап. полезно |
Там есть некий параметр p=
Вместе с ним и sid можно на любом компе зайти. |
что за параметр p= ?
|
p - кука для vk.com
кароче бесполезняк всё это. я раньше тысячами куки таскал, теперь хер возьмешь куки с vk.com, там редирект гребаный. |
Паша Дуров молодец.
Так попробывал из одного браузера подменить куку в другом, всё работает.Зашел на подменненый акк.А не на свой. Затем поменял ip всё повторил и тогда меня кинуло на страницу авторизации. |
Почитал бред по-поводу привязки к железу, аж смешно стало :)
Логинимся. Удаляем нафик все куки vkontakte.ru Заходим на главную - бац и мы авторизировались... А всего-то оно еще на login.vk.com сохраняет куки "p" (эта ваша "привязка") и "l" (айдишник). Это сделали для того, что бы никаким xss нельзя было спереть драгоценную "p" куку... Сделано очень просто и гениально :) |
К "аппаратной привязке" HTTP заголовки не имеют никакого значения, делается через javascript.
Только это не значит что там оно есть ;) |
xFF
Я объяснил постом выше, как делается привязка... |
Ребят я чутка другую привязку заметил у себя! У меня дома несколько компов и 2 провайдера, вот какая история! Делаю куки я на первом компе на первом провайдере, все сделал, все заходит, переключаю провайдера на этом же компе, все показывает что все куки невалид и не по одному не заходит, переключаю на первого провайдера на этом же компе и все куки валид и все работает! переношу куки на другой комп и ставлю первого провайдера, все работает, пробую на втором компе врубить второго провайдера и пробую куки, то все не пашут! Причем на первом провайдере, на котором делал куки и на котором они работают, IP динамический, а на втором провайдере висит порядка 200компов в сети, но все равно исходящий ip 1 на всех! Такая же чушь, если поменять провайдеры, то она втором все будет работать, а на первом нет!
|
хм,не знаю не знаю,вобще я же проводил експеремент с проксей,тоисть подменой IP,тогда куки не мрут,заходит норм,а при смене провайдера походу токо IP меняеться...
|
ну там может привязка не совсем идет к IP а может как то к подсети провайдера, потому что провайдеры супер разные!
|
Я провайдеров менял,куки жили...
|
Ну тот момент, когда ты менял провайдера и они жили был давно! Так как это уже давненько сменили! И привязка естЬ! Но она по подсети провайдера, но также не у каждого провайдера так! Также все зависит от программ, которыми пользуешься, если ты их имеешь в виду! Что они автоматом сейчас куки переделывают ... и имеется в виду сам провайдер а не твой IP
|
я правильно понимаю, что имея p куку с vk.com можно авторизоваться на любом компе?
если это так, то тырить её можно например троем, который либо снифает трафик (в этом случае лучше пасс и мыло тырить), либо парся файлы кукисов популярынх браузеров. |
Испытания тут конечно сделанны неплохие, ТС респект, что всё разобрал и разложил.
Меня интересует, почему никто ничего не написал про заголовок "User-Agent", многие системы защиты делают привязку или какую то хитрость именно к нему. К примеру на нашем родном Античате привязка не только к IP, но и к юзер агенту, и ещё к чему то (не проверял точно). Скорее всего [В]контакте действует сходим способом. Да, и "User-Agent"далеко не единственный заголовок, есть ещё язык, форвардинг, VIA и т.д... |
привязка до сраки если куки тырит сниффер в лане выходящем через 1 шлюз?
|
Эксперименты показали, что для авторизации необходимо и достаточно знать только "l" и "p" куки с доменом login.vk.com.
Никаких привязок ни к IP, ни к чему бы то ни было еще, нет. |
Мде... l и p даёт домен login.vk.com, они нужны для обновелния remixsid и для определения того нужно ли пароль сохранять или нет. Короче теоретически если убрать указать галочку "Запомнить", то не будут даваться эти куки. Это раз.
remixsid - это всего лишь идентификатор сессии, он даётся на время. Не зависимо от того на другом вы компе или нет, контакт рано или поздно попросит эти куки обновить и тут уже если вы поставили галочку "Запомнить", то будет создаваться новый remixsid, т.к. L и P есть. Это два. remixsid - это просто хэш, из ниего нереально что то вынуть. Он создаётся на основе юзер агента, времени создания, IP, ID, и немного рандомной инфы. И при добавлении это всё сильно перемешивается и наверняка подвергается фильтру. |
Я заранее извиняюсь... прочитал ТС сочинение, как я провел лето... неудовлетворило..
У меня всё работало,работает,и будет работать... 1)Качаем Flylink DC++ 2)Ищем списки хабов, соотв своему городу. 3)В поиск вбиваем login.vk 4)Забираем все txt с этими куками. 5)l- логин p-пасс (хеши естественно) 6)В поиск вбиваем vkontakte 5)Забираем все txt , нам нужен только ремикссид 6)В опере подставляем всё соответственно К примеру(рабочее) мастер@vkontakte[1].txt ============ remixchk 5 vkontakte.ru/ 1536 1242147584 30120846 2716728704 30045876 * remixnews_privacy_filter 0 vkontakte.ru/ 1600 3370861824 30065156 940328160 30045040 * remixsid 6f2638288aa72d1b14d96b753ca04ac45920542fdaee4fc31c 1785ec vkontakte.ru/ 1024 901652608 30119302 3043608704 30045876 * remixclosed_tabs 0 vkontakte.ru/ 1600 3287586176 30118719 529815200 30046300 * =============== мастер@login.vk[2].txt =============== l 13096671 login.vk.com/ 1024 1609780352 30117563 3040008704 30045876 * p 5b162d1bd3978f3bac2aa099704d5cc540a5 login.vk.com/ 1024 2054207232 30119533 3040008704 30045876 * =========== |
Другими словами зная MD5 пароля, можно залогиниться вконтакте под ним?
|
| Время: 16:33 |