Просмотр полной версии : выдергиваем капчу
Всем привет, если не трудно, подскажите как выдернуть sid капчи, которую отсылает контакт... пример http://vk.com/captcha.php?s=1&sid=310888503411 Только вот этот sid я не могу найти в коде стр
Заранее спасип
login999
31.01.2010, 15:28
Всем привет, если не трудно, подскажите как выдернуть sid капчи, которую отсылает контакт... пример http://vk.com/captcha.php?s=1&sid=310888503411 Только вот этот sid я не могу найти в коде стр
Заранее спасип
=\ JSON ...
если не трудно. можно подробнее... я с js не в ладах... и json никогда на практике не использовал..... хотябы принцип можно?
login999
31.01.2010, 15:34
если не трудно. можно подробнее... я с js не в ладах... и json никогда на практике не использовал..... хотябы принцип можно?
Там везде аякс.
Конкретно при входе отправляется два запроса - первый на получение возможности на попытку авторизации. Если не дают такой возможности то обратно присылают ассоциативный массив в JSON, и в нем есть ключ captcha_sid. Если дают добро то просто присылается строка vklogin. Потом уже идет сам запрос авторизации.
И вообще - wireshark в руки и анализировать - там делов то на пять минут.
Но это не единственный трабл ^.^ остальные будут потом :) При авторизации идет еще и два редиректа, которые должны нажиматься яваскриптом (ну это они так думают)
спасип =).... пойду смотреть..... все что можно было на php сделать я сделал - осталось повозиться с js
login999
31.01.2010, 15:38
спасип =).... пойду смотреть..... все что можно было на php сделать я сделал - осталось повозиться с js
Это не обязательно делать на js :D Просто нужно повозиться
да там и парсить то нечего...
ТС, юзай хотя бы чарлис (Charles), гораздо проще софт делать будет :)
Но это не единственный трабл ^.^ остальные будут потом При авторизации идет еще и два редиректа, которые должны нажиматься яваскриптом (ну это они так думают)
это я уже замутил....правдо сталкнулся с трудностью, когда не мог понять пачему мне не присваивает sid,хотя кукисы l и p присвоили... лишь потом допер что этот параметр надо выдергивать на домене login.vk.com (еб*чией редиректы)
Щас вот хачу к антикапче адаптировать.....ладно пойду работать =)
успехов)
что хоть пишешь то?
1. проверяем, есть ли каптча
POST /login.php HTTP/1.1
Host: vkontakte.ru
...
...
Referer: http://vkontakte.ru/login.php?m=1&email=1
Content-Length: 18
op=a_login_attempt
Если ответ
HTTP/1.1 200 OK
Server: nginx/0.7.59
...
...
Content-Length: 7
vklogin
то капчи нету.
Если ответ
HTTP/1.1 200 OK
Server: nginx/0.7.59
...
...
Content-Length: 58
{"ok":-2,"captcha_sid":"361003254776","text":"Enter code"}
то капча есть.
Картинка находится по адресу: http://vkontakte.ru/captcha.php?s=1&sid=361003254776
Как распознали отправляем:
POST /login.php HTTP/1.1
Host: vkontakte.ru
...
...
Referer: http://vkontakte.ru/login.php?m=1&email=1
Content-Length: 60
op=a_login_attempt&captcha_sid=361003254776&captcha_key=z9cd
Спасип Gloоk, внес ясность... Теперь буду знать что искать надо в хедерах. +1
[yZ']успехов)
что хоть пишешь то?
да что получиться, пока что написал авторизацию и всякие парсеры, думаю замутить свой чекер, мб прокси прикручу а там видно будет
Заранее сорри за оффтоп, но название темы как-раз подходит к моему вопросу.
Недавно делал авторег для мыла - там передавался один параметр, который является неким хитрым преобразованием USERAGENT'а в число (защита от авторега). Все это дело вычислялось на JS и добавлялось к форме. Естественно, я посмотрел код JS и сделал аналогичную функцию на PHP.
Теперь вопрос: скажите, а на флэше можно было сделать аналогичную функцию, защиту от авторега? (сорри если тупой вопрос, с флэшем плохо знаком) И как тогда можно было бы вычислить, что за функция используется во флэшке? Ведь её код закрыт, в отличии от js.
либо искать исходники в инете, либо парсить этот скрытый параметр (я так делал)
Что-то я проблемы не пойму
php.net/json_decode
либо искать исходники в инете, либо парсить этот скрытый параметр (я так делал)
А если этот скрытый параметр каждый раз меняется и зависит от какого-то IDшника? То есть, во флеше может быть функция преобразования какого-то значения и добавления его к форме? Как тогда вскрыть флэшку, чтобы увидеть алгоритм, по которому вычисляется это самое скрытое значение?
preg_match_all("/id='(.*?)' value='(.*?)'/is", $html, $data, PREG_SET_ORDER);
парсишь ID а потом сам хеш, какие проблемы?
Whois ты меня не понял. Я говорю совсем про другое.
Приведу пример:
Загружаем форму регистрации. В форме есть скрытые поля formid="rAnDoM42423" и antibot="" (пустое). Через яваскрипт вычисляется значение antibot на основе значения formid(каждый раз разное) и присваивается полю antibot. Задача сводится к тому, чтобы посмотреть код этой функции на JS, вычисляющей значение antibot и сделать такую же.
Мой вопрос был вот в чем: а можно ли на флеше сделать аналогичную защиту от авторега? Если да, то как её можно будет обойти? Как посмотреть код во флеше?
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot