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

Крокодил ВКонтакте - анализ багов приложения
  #1  
Старый 30.03.2010, 01:47
Аватар для mailbrush
mailbrush
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме:
6075534

Репутация: 2731


Отправить сообщение для mailbrush с помощью ICQ
По умолчанию Крокодил ВКонтакте - анализ багов приложения

Значит так, сегодня решил покопать эту игрушку. Авторы этого приложения не пожалели 35 000 рублей на специальный домен - kroko.vkontakte.ru, хотя 1 миллион пользователей, наверное, оправдывают цену.

Не туда что-то я пошёл, пожалуй, перейду к анализу приложения.
  1. Удлинение хвоста Крокодила на N см.
    Анализируя запросы и исходники Кроко, я увидел, что после выигрыша, отсылается запрос на api.vkontakte.ru, в котром указывается новая длина хвоста. Пример запроса:
    Код:
    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 от
      Код:
      34595285api_id=1709838key=1402method=putVariablerandom=4831976.466812193test_mode=1value=1000api_secret

    Вроде-бы все есть, да только одного нету - секретного ключа приложения. Берем в руки SWF Decompiler, открываем в нем флешку Крокодила (далее - Кроко). Находим интересный класс - Const:

    Вот и все, секретный ключ приложения у нас: nM27UsOLVI.
    Теперь никакого труда не составит сгенерировать sig, а соответственно послать запрос на увеличение длины хвоста в api.vkontakte.ru

    Делаем md5 следующей строки:
    Код:
    YOUR_IDapi_id=1709838key=1402method=putVariablerandom=4831976.466812193test_mode=1value=LENGTHnM27UsOLVI
    Изменяемые значение выделены и окрашены в оранжевый цвет, а именно:
    • YOUR_ID - ваш ID ВКонтакте.
    • LENGTH - необходимая длина в миллиметрах.

    Получили sig? Отлично. Идем удлинять хвост, переходим по ссылке:
    Код:
    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


  2. Экстрасенсорика или узнаем секретное слово
    Эх, моя любопытность Берем в руки HTTPAnalyzer (сниффер (перехватчик) запросом. Жмем Start в нем, после чего в приложении нажимаем "Начать игру". Получаем несколько запросов. Первые два - для получения баннеров рекламы, третий - для кроссдомена, а последний - для получения параметров игры.



    Именно он нас интересует. В теле ответа получаем следующее:
    Код:
    <?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; 30.03.2010 в 16:39..
 
Ответить с цитированием

  #2  
Старый 30.03.2010, 03:32
Аватар для steyj
steyj
Новичок
Регистрация: 16.03.2010
Сообщений: 28
Провел на форуме:
144421

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

Нормаль, а может как нибудь для игры в покер чего ни будь создашь? К примеру видеть карты игрока
 
Ответить с цитированием

  #3  
Старый 30.03.2010, 03:34
Аватар для tiath
tiath
Участник форума
Регистрация: 12.12.2009
Сообщений: 155
Провел на форуме:
1459822

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

steyj а хохо не хуху? )))
 
Ответить с цитированием

  #4  
Старый 30.03.2010, 03:43
Аватар для steyj
steyj
Новичок
Регистрация: 16.03.2010
Сообщений: 28
Провел на форуме:
144421

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

Можно и такое в каком конверте
 
Ответить с цитированием

  #5  
Старый 30.03.2010, 04:25
Аватар для GlooK
GlooK
Участник форума
Регистрация: 20.04.2007
Сообщений: 174
Провел на форуме:
2310282

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

Руки бы оторвать тому кодеру, кто юзает putVariable в приложениях.
 
Ответить с цитированием

  #6  
Старый 30.03.2010, 04:40
Аватар для netdimarik
netdimarik
Новичок
Регистрация: 04.05.2009
Сообщений: 21
Провел на форуме:
37693

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

ну чтоже ждём когда допишут )) а так респект !)
 
Ответить с цитированием

  #7  
Старый 30.03.2010, 07:54
Аватар для Zyon
Zyon
Познающий
Регистрация: 24.02.2010
Сообщений: 53
Провел на форуме:
666841

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

Стало интересно, вот только приложение пока я это не юзал))
 
Ответить с цитированием

  #8  
Старый 30.03.2010, 12:11
Аватар для Assembler
Assembler
Участник форума
Регистрация: 01.09.2007
Сообщений: 203
Провел на форуме:
812964

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

Молодца, ай молодца. mailbrush по старой дружбе http://vkontakte.ru/app676982 тоже все перерыл именно этот Sig параметр тоже понял что надо сгенерировать но до сих пор не понял какие параметры в него шить. Помоги... Если что кинь в ЛС. Просто если догадаешься как это уже приват инфо в чистом виде...
 
Ответить с цитированием

  #9  
Старый 30.03.2010, 12:37
Аватар для regau
regau
Участник форума
Регистрация: 07.06.2009
Сообщений: 125
Провел на форуме:
650073

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

скинь на vkbugs.ru
 
Ответить с цитированием

  #10  
Старый 30.03.2010, 12:45
Аватар для Assembler
Assembler
Участник форума
Регистрация: 01.09.2007
Сообщений: 203
Провел на форуме:
812964

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

Пусть допишет сначала. Потом если захочет сам скинет. Я бы на его месте по другому бы сделал.
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Приложения ВКонтакте (вопросы, продвижение, моненизация). Folc Социальные сети 18 06.03.2010 22:07
Программы для сайта Вконтакте. Fruit Социальные сети 3 05.01.2010 22:59
Приложения Вконтакте Don Anton Покупка, продажа, услуги в Соц. Сетях 8 02.08.2009 14:54



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


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




ANTICHAT.XYZ