Перейти к содержанию

Целуй и Знакомься


Рекомендуемые сообщения

Привет всем, сразу скажу я новичок. Хотел задастья вопросом о том как взломать сердчеки в игре "Целуй и Знакомься"

 

Что я пытался сделать? я делал по стандарту, отсеивал числа, менял, но они визуальные..

 

Есть ли реальный Шанс её как нибудь взломать?..

 

Вот игра: http://vk.com/app3144697
 

Прошу тему не удалять.

Ссылка на комментарий
Поделиться на другие сайты

Кстати вот публичный пример обработки сообщения обмена "голосов на что-то" от вк-серверов сторонним сервером

 

Маленькое условие

"Внимание! В случае получения повторного уведомления типа Изменения статуса заказа (с тем же order_id) ответ должен в точности повторять ответ для исходного уведомления."

Например, если было отправлено это уведомление, и был получен положительный ответ, но он не дошел до сервера ВКонтакте, или по каким-то временным причинам не удалось перевести заблокированные средства на счет приложения сразу после получения ответа, такое же уведомление будет отправлено повторно. При этом не нужно выполнять новый заказ, достаточно просто прислать тот же ответ, что и в предыдущий раз (сохранив у себя order_id и проверив по нему, что такое уведомление уже приходило).

Если разработчик игры не предвидел разные варианты смены статусов заказа, то сердец возможно добавит в базу больше чем был обмен. Сердца скорее всего хранятся на стороннем сервере в базе myslq там же и картинки всяких подарков, и также информацию кто кому что подарил. Смущает, что там реальные деньги за эти голоса и сердца. Связываться не хочется. Да и игра для школьников, совершенно не интересная.

<?php  header("Content-Type: application/json; encoding=utf-8");  $secret_key = 'hiUl8U4F9q3BcbAl28va'; // Защищенный ключ приложения  $input = $_POST;  // Проверка подписи  $sig = $input['sig'];  unset($input['sig']);  ksort($input);  $str = '';  foreach ($input as $k => $v) {    $str .= $k.'='.$v;  }  if ($sig != md5($str.$secret_key)) {    $response['error'] = array(      'error_code' => 10,      'error_msg' => 'Несовпадение вычисленной и переданной подписи запроса.',      'critical' => true    );  } else {    // Подпись правильная    switch ($input['notification_type']) {      case 'get_item':        // Получение информации о товаре        $item = $input['item']; // наименование товара  if ($item == 'item1') {          $response['response'] = array(            'item_id' => 25,            'title' => '300 золотых монет',            'photo_url' => 'http://somesite/images/coin.jpg',            'price' => 5          );        } elseif ($item == 'item2') {          $response['response'] = array(            'item_id' => 27,            'title' => '500 золотых монет',            'photo_url' => 'http://somesite/images/coin.jpg',            'price' => 10          );        } else {          $response['error'] = array(            'error_code' => 20,            'error_msg' => 'Товара не существует.',            'critical' => true          );        }        break;  case 'get_item_test':        // Получение информации о товаре в тестовом режиме        $item = $input['item'];        if ($item == 'item1') {          $response['response'] = array(            'item_id' => 125,            'title' => '300 золотых монет (тестовый режим)',            'photo_url' => 'http://somesite/images/coin.jpg',            'price' => 5          );        } elseif ($item == 'item2') {          $response['response'] = array(            'item_id' => 127,            'title' => '500 золотых монет (тестовый режим)',            'photo_url' => 'http://somesite/images/coin.jpg',            'price' => 10          );        } else {          $response['error'] = array(            'error_code' => 20,            'error_msg' => 'Товара не существует.',            'critical' => true          );        }        break;  case 'order_status_change':        // Изменение статуса заказа        if ($input['status'] == 'chargeable') {          $order_id = intval($input['order_id']);  // Код проверки товара, включая его стоимость          $app_order_id = 1; // Получающийся у вас идентификатор заказа.  $response['response'] = array(            'order_id' => $order_id,            'app_order_id' => $app_order_id,          );        } else {          $response['error'] = array(            'error_code' => 100,            'error_msg' => 'Передано непонятно что вместо chargeable.',            'critical' => true          );        }        break;  case 'order_status_change_test':        // Изменение статуса заказа в тестовом режиме        if ($input['status'] == 'chargeable') {          $order_id = intval($input['order_id']);  $app_order_id = 1; // Тут фактического заказа может не быть - тестовый режим.  $response['response'] = array(            'order_id' => $order_id,            'app_order_id' => $app_order_id,          );        } else {          $response['error'] = array(            'error_code' => 100,            'error_msg' => 'Передано непонятно что вместо chargeable.',            'critical' => true          );        }        break;    }  }  echo json_encode($response);  ?>
Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

Есть ли реальный Шанс её как нибудь взломать?..

 

Шанс "взломать" все эти казуальные игры намного больше, чем ты думаешь. В любой непонятной ситуации с такими игрушками - нюхай трафик))

Ссылка на комментарий
Поделиться на другие сайты

Сколько раз можно людям объяснять , что все данные на сервере ? O-=

 

Это никак не помешает кулцхакеру, с того же CE подрубиться в "МегаБизнес", апнуть себе 100lvl и получить доступ к каким-то зданиям, купить какой-то шмот и т.п. Да, после перезагрузки уровень вернется назад...НО, постройки останутся. Небольшой лайфхак)

Ссылка на комментарий
Поделиться на другие сайты

×
×
  • Создать...

Важная информация

Находясь на нашем сайте, Вы автоматически соглашаетесь соблюдать наши Условия использования.