Значит так, сегодня решил покопать эту игрушку. Авторы этого приложения не пожалели 35 000 рублей на специальный домен - kroko.vkontakte.ru, хотя 1 миллион пользователей, наверное, оправдывают цену. Не туда что-то я пошёл, пожалуй, перейду к анализу приложения. Удлинение хвоста Крокодила на N см. Анализируя запросы и исходники Кроко, я увидел, что после выигрыша, отсылается запрос на api.vkontakte.ru, в котром указывается новая длина хвоста. Пример запроса: Code: http://api.vkontakte.ru/api.php?api_id=1709838&value=1000&sig=a32d41491c2717ee135f4747854c64f2&method=putVariable&random=4831976.466812193&key=1402&test_mode=1 Поясню список параметров: api_id - ID приложения value - длина хвоста в миллиметрах random - абсолютно случайное число test_mode - тестовый режим. Это позволяет тестировать приложение без загрузки его на сайт. method - название метода API из общего списка функций. putVariable – записывает значение переменной. key - номер переменной, в которой записывается её значение. sig - это именно то, что нам нужно сгенерировать (найти), и над этим придется потрудится. sig - подпись, которая создается в целях безопасности. Параметр sig равен md5 от конкатенации следующих строк: viewer_id – id текущего пользователя, переданный SWF посредством flashvars при инициализации. пар "parameter_name=parameter_value", расположенных в порядке возрастания имени параметра (по алфавиту). секрета приложения api_secret Приведу пример: в запросе, который я написал выше, параметр sig равен a32d41491c2717ee135f4747854c64f2, тоесть md5 от Code: 34595285api_id=1709838key=1402method=putVariablerandom=4831976.466812193test_mode=1value=1000[COLOR=Red][B]api_secret[/B][/COLOR] Вроде-бы все есть, да только одного нету - секретного ключа приложения. Берем в руки SWF Decompiler, открываем в нем флешку Крокодила (далее - Кроко). Находим интересный класс - Const: Вот и все, секретный ключ приложения у нас: nM27UsOLVI. Теперь никакого труда не составит сгенерировать sig, а соответственно послать запрос на увеличение длины хвоста в api.vkontakte.ru Делаем md5 следующей строки: Code: [B][COLOR=DarkOrange]YOUR_ID[/COLOR][/B]api_id=1709838key=1402method=putVariablerandom=4831976.466812193test_mode=1value=[B][COLOR=DarkOrange]LENGTH[/COLOR][/B]nM27UsOLVI Изменяемые значение выделены и окрашены в оранжевый цвет, а именно: YOUR_ID - ваш ID ВКонтакте. LENGTH - необходимая длина в миллиметрах. Получили sig? Отлично. Идем удлинять хвост, переходим по ссылке: Code: http://api.vkontakte.ru/api.php?api_id=1709838&value=LENGTH&sig=SIG&method=putVariable&random=4831976.466812193&key=1402&test_mode=1 LENGTH - необходимая длина хвоста. Важно: не должна отличатся от той, что была при генерации sig SIG - полученный sig. Обновляем приложение, радуемся Важно: пользователь, которому изменяется длина хвоста должен быть залогинен ВК PS: Тому, кто ничего не понимает в том, что я написал выше написал специальный скрипт, который генерирует ссылку сам: http://hacker.hmarka.net/kroko.php Экстрасенсорика или узнаем секретное слово Эх, моя любопытность Берем в руки HTTPAnalyzer (сниффер (перехватчик) запросом. Жмем Start в нем, после чего в приложении нажимаем "Начать игру". Получаем несколько запросов. Первые два - для получения баннеров рекламы, третий - для кроссдомена, а последний - для получения параметров игры. Именно он нас интересует. В теле ответа получаем следующее: Code: <?xml version="1.0"?><response><word>1079,1084,1088,1082,1082,1084,1091,1092</word><presenterPen>24</presenterPen><count>2</count><sessionId>95799079</sessionId><presenterId>34595285</presenterId><playerIds>34595285,19531510</playerIds><timeToStart>14992</timeToStart></response> Это ответ в формате XML. То, что между <> и </> - это имя параметра, а то, что между именами - значение. На интересует только одно - word - зашифрованное слово. Но как его расшифровать? Опять берем SWF Decompiler, смотрим функцию расшифровки. Единственным аргументом этой функции является именно этот word. Далее функция преобразовывает эту строку в массив, разбивая её через запятую. Позже создается цикл от 0 и до количества элементов массива минус 5 (5 последних цифр - мусор, который отбрасывается). В самом цикле переменной _loc_2 присваивается значение конкатенации строк _loc_2 и значение элемента массива _loc_3 с индексом _loc_4 минус _loc_4. Вот такая вот защита от "хакеров", но нам это не страшно Т.к. все обходится элементарно просто. Если закодирован первый символ был 1079, то его раскодирование = String.fromCharCode(1079 - 0), тоесть String.fromCharCode(1079). Второй был 1084, его раскодировка = String.fromCharCode(1084 - 1), тоесть String.fromCharCode(1083), и так далее, с каждым разом увеличивая _loc_4. PS: Кто ничего не понял - юзает мою тулзу http://hacker.hmarka.net/kroko2.php Ну, вобщем, все... Если куда-то копируете, ссылку сюда давайте И еще мой копирайт
Молодца, ай молодца. mailbrush по старой дружбе http://vkontakte.ru/app676982 тоже все перерыл именно этот Sig параметр тоже понял что надо сгенерировать но до сих пор не понял какие параметры в него шить. Помоги... Если что кинь в ЛС. Просто если догадаешься как это уже приват инфо в чистом виде...
Вот от покера Видимо два запроса отвечают 21 и 22 Вот 21 Вот сам запрос: Code: http://pokerex.skillclub.com/Entry.ashx?sig=2178f7f2456053709e3962139cf0e368&pid=9830377&method=max&val=70&salt=12378642&uid=9830377&key=21&auth%5Fkey=a34a0154ced6fe1a96e890f6a1517c60 Вот то что в запросе: Sig 2178f7f2456053709e3962139cf0e368 - подпись pid 9830377 мой ид method max - че делать (метод) val 70 - фишки salt 12378642 =) uid 9830377 мой ид key 21 номер запроса auth_key a34a0154ced6fe1a96e890f6a1517c60 - ключ авторизации Вот 22 Code: http://pokerex.skillclub.com/Entry.ashx?sig=de09d544e9eb1dc5aa6d5fc1c2880b03&pid=9830377&method=setScore&val=70&salt=10059406&uid=9830377&key=22&auth%5Fkey=a34a0154ced6fe1a96e890f6a1517c60 Sig de09d544e9eb1dc5aa6d5fc1c2880b03 - подпись pid 9830377 мой ид method setScore - че делать (метод) - Вот тут поставить счет. val 70 - фишки salt 10059406 =) uid 9830377 мой ид key 22 номер запроса auth_key a34a0154ced6fe1a96e890f6a1517c60 - ключ авторизации - Он кстати одинаковый. Ну это и понятно =) Походу тут мд5 + salt =( Вот еще можно изменить все свои данные типо имя и т.д. Режим Аноним Code: http://pokerex.skillclub.com/Entry.ashx?sig=d4eac27e295068c606e10de89f9f6a3d&salt=9923647&uid=9830377&method=setLabel&pid=9830377&label=9830377%7C%D0%98%D0%B3%D0%BE%D1%80%D1%91%D0%BA%7C%D0%9B%D0%B8%D1%87%D0%BD%D0%BE%D1%81%D1%82%D1%8C%7C%401cs4398%2E%403%2Fu9830377%2Fc%5Fcc2e1c85%402%7C%401cs4398%2E%403%2Fu9830377%2Fb%5F1fd5d379%402%7C112%7C%7C26%2E1%2E1989%7C%7C%7C2%7C%7C%7C&auth%5Fkey=a34a0154ced6fe1a96e890f6a1517c60 Sig d4eac27e295068c606e10de89f9f6a3d - подпись pid 9830377 мой ид method setLabel - че делать (метод) - Вот тут поставить данные о тебе. salt 9923647 =) uid 9830377 мой ид label 9830377%7C%D0%98%D0%B3%D0%BE%D1%80%D1%91%D0%BA%7C%D0%9B%D0%B8%D1%87%D0%BD%D0%BE%D1%81%D1%82%D1%8C%7C%401cs4398%2E%403%2Fu9830377%2Fc%5Fcc2e1c85%402%7C%401cs4398%2E%403%2Fu9830377%2Fb%5F1fd5d379%402%7C112%7C%7C26%2E1%2E1989%7C%7C%7C2%7C%7C%7C - тут данные обо мне auth_key a34a0154ced6fe1a96e890f6a1517c60 - ключ авторизации - Он кстати одинаковый. Ну это и понятно =) Осталось понять как sig подделать.
как открыть флешку в SWF Decompiler не получаетса , смотрел видео как делать, у них там появляется в експлорере кнопка, а у меня её нету(((
https://www.sothink.com/download/swfcatcher.xpi Аддон для мозилы. Далее в инструменты и щелкай по нему.
Мда. const есть но secret нет но судя по скрину маил браша че то мы не так делаем. У него название идет не api_wrapper.swf вобщем маилбраш ты где???
Вобщем надо версию SWF Decompiler 5.4 скачивать Таблетка SWF Decompiler V5.4 build 535 Name: Registered Code: 031U4A-K03QAX-6YDQBB-JTHN2J-2KEUCV-4MNAD0-KT9BVV-QN3B1W-HDJUZA-0AWPT8-6HWBJR-UBZYMK Скачать от сюда http://www2.sothink.com/download/swfdec.zip
Старался и оформлял долго,надеюсь ты одобришь. Кпирайт есть! хttp://allcheats.ru/t163634/?uri=/t163634-post1942157/#post1942157