В настоящее время я изучаю возможность модификации мобильной игры «Маджонг» посредством чистого обратного проектирования на стороне клиента с целью управления внутриигровой карточной логикой. Однако я столкнулся с несколькими фундаментальными техническими препятствиями и хотел бы обратиться за советом к эксперту:
Несогласованность многоуровневых данных: данные карты игры существуют на уровне пользовательского интерфейса, логическом уровне, сетевом уровне и уровне проверки. Когда я пытаюсь изменить значения в коде Smali логического уровня, пользовательский интерфейс немедленно выходит из строя из-за нарушенных ограничений данных (например, несовпадающего количества карт, хешей и заказов). Как добиться согласованного изменения данных на всех уровнях?
Проверка на стороне сервера: сервер отклоняет любые подделанные полезные данные. Он проверяет целостность каждой руки, используя начальные значения, хэш-значения, цифровые подписи и историю сыгранных карт. Есть ли способ восстановить «легальную» полезную нагрузку JSON, которая сможет пройти эту проверку на стороне сервера?
Обход защиты от обнаружения: в игре используются проверки целостности, зашифрованная связь и анализ поведения. Простые методы, такие как добавление случайных задержек или обфускация на уровне Smali, легко обнаруживаются. Каковы эффективные стратегии защиты от обнаружения на стороне клиента на уровне Smali?
Стабильность переупаковки: после внедрения кода Smali и переупаковки APK приложение вылетает при запуске из-за сбоев проверки подписи, смещения идентификатора ресурса и встроенных механизмов защиты от взлома. Как я могу создать надежный рабочий процесс для внедрения, переупаковки и подписания, позволяющий избежать этих проблем?
Я могу предоставить исходный APK, фрагменты кода Smali и примеры полезной нагрузки сетевых данных для дальнейшего анализа. Мы будем очень признательны за любые идеи или рекомендации по этим проблемам.
В настоящее время я изучаю возможность модификации мобильной игры «Маджонг» посредством чистого обратного проектирования на стороне клиента с целью управления внутриигровой карточной логикой. Однако я столкнулся с несколькими фундаментальными техническими препятствиями и хотел бы обратиться за советом к эксперту: [list] [*]Несогласованность многоуровневых данных: данные карты игры существуют на уровне пользовательского интерфейса, логическом уровне, сетевом уровне и уровне проверки. Когда я пытаюсь изменить значения в коде Smali логического уровня, пользовательский интерфейс немедленно выходит из строя из-за нарушенных ограничений данных (например, несовпадающего количества карт, хешей и заказов). Как добиться согласованного изменения данных на всех уровнях?
[*]Проверка на стороне сервера: сервер отклоняет любые подделанные полезные данные. Он проверяет целостность каждой руки, используя начальные значения, хэш-значения, цифровые подписи и историю сыгранных карт. Есть ли способ восстановить «легальную» полезную нагрузку JSON, которая сможет пройти эту проверку на стороне сервера?
[*]Обход защиты от обнаружения: в игре используются проверки целостности, зашифрованная связь и анализ поведения. Простые методы, такие как добавление случайных задержек или обфускация на уровне Smali, легко обнаруживаются. Каковы эффективные стратегии защиты от обнаружения на стороне клиента на уровне Smali?
[*]Стабильность переупаковки: после внедрения кода Smali и переупаковки APK приложение вылетает при запуске из-за сбоев проверки подписи, смещения идентификатора ресурса и встроенных механизмов защиты от взлома. Как я могу создать надежный рабочий процесс для внедрения, переупаковки и подписания, позволяющий избежать этих проблем?
[/list] Я могу предоставить исходный APK, фрагменты кода Smali и примеры полезной нагрузки сетевых данных для дальнейшего анализа. Мы будем очень признательны за любые идеи или рекомендации по этим проблемам.