🔑 Взлом игр на Unity 3D и защита от него [Tutorial] - часть 2

Поделиться
HTML-код
  • Опубликовано: 1 окт 2024

Комментарии • 64

  • @ПиксельАрт-ъ6м
    @ПиксельАрт-ъ6м 4 года назад +23

    Го гайд по серверам, бекенду и защите всей програмы амбарным замком

  • @spasatilex-1280
    @spasatilex-1280 5 лет назад +22

    Сделай видео как сделать чтобы игра поддерживала моды

    • @ТестТест-в3ъ
      @ТестТест-в3ъ 4 года назад

      Это не сложна кстати

    • @ТестТест-в3ъ
      @ТестТест-в3ъ 4 года назад

      Я на паскале такой хернёй страдал раньше 😁

    • @c4llv07e
      @c4llv07e 4 года назад +1

      @@ТестТест-в3ъ Так это паскаль, а тут бинарники из C#. Разница есть

    • @ТестТест-в3ъ
      @ТестТест-в3ъ 4 года назад

      @@c4llv07e в c# тоже можно написать mod lang и будет даже легче

    • @ТестТест-в3ъ
      @ТестТест-в3ъ 4 года назад

      @@c4llv07e да я не профи в c# но точно знаю как написать modlang

  • @Сергей-ы3д8и
    @Сергей-ы3д8и 4 года назад +2

    Очень интересно, спасибо. Теперь буду знать, как хотя бы минимально защитить игру.

  • @virtualriot4062
    @virtualriot4062 5 лет назад +3

    Материал отличный и очень полезный

  • @developmentstudio9917
    @developmentstudio9917 5 лет назад +2

    Помню как писал модификацию для игры.

  • @fliks7662
    @fliks7662 4 года назад +4

    Спасибо конечно за урок, но с моим то кодом не кто не захочет что-то менять))

    • @_Otets_
      @_Otets_ 2 года назад

      Лучшая защита от взлома когда - говнокод!

    • @Бот-ф7п
      @Бот-ф7п 2 года назад

      @@_Otets_ Забавно, но по сути это единственная мера.

  • @n1k1zoomi
    @n1k1zoomi 4 года назад +1

    Спасибо за такие две части! Интересно взломать будет старую игру про Балди (есть в стиме новая версия) и защитить хоть не полностью, но будет защита

  • @JohnSmith-tk2wp
    @JohnSmith-tk2wp 4 года назад +1

    лол, от перезаписи памяти чит енжином компиляция в машинный код не спасет также как не спасет от IDA
    там есть и декомпилятор в псевдокод из машинных кодов.
    А модельки наверняка можно будет ниндзя риппером стащить когда они загружены :)
    То что ты говоришь в видосе это слишком наивно, нужно строить защиту которая будет детектить доступ к памяти и для взлома к которой понадобится очень дорогой хакер

    • @EmeraldPowder
      @EmeraldPowder  4 года назад

      Ничего на стороне клиента на 100% не спасёт. Но вот когда я в IDA открываю игру - тут же пугаюсь и закрываю. А в dnSpy - могу разобраться, и даже поменять что-то. Так что уровень защиты il2cpp немного повысит
      С модельками и текстурами да, их придётся в расшифрованном виде слать на видеокарту, так что тут особо ничего не придумаешь

  • @CrafterMinecrafter
    @CrafterMinecrafter 3 года назад

    и да, под винду на игру с системой билда il2cpp очень легко написать чит/мод

  • @CrafterMinecrafter
    @CrafterMinecrafter 3 года назад

    ля, прикольный чел, правда делает мелкие ошибки когда что-то говорит, но это такое

  •  4 года назад +4

    8:15 IL2CPP Можно реверснуть в файлы dll, тогда узнать методы хранимые игрой, их названия и offset'ы в памяти. А далее изменением hex кода можно изменить почти всё. Или можно написать код в файле MainActivity если не ошибаюсь, и применяя доп. библиотеки изменять во время игры данные, можно сделать и дополнительное меню для включения и выключения функций.

    • @EmeraldPowder
      @EmeraldPowder  4 года назад +1

      Зареверсить можно всё, это правда. Но с il2cpp - гораздо сложнее, без него обычные .NET сборки вообще даже названия многих переменных и методов содержат как в исходном коде. Да, и плюс в Android приложение всегда можно какой-нибудь свой код добавить сбоку, так что тут далеко не 100% защита, всегда если кто-то сильно захочет то разберет игру на части

    •  4 года назад

      @@EmeraldPowder в этом ты прав

    • @yuriynevazhno2542
      @yuriynevazhno2542 4 года назад +9

      Если умеешь читать машинный код - для тебя все опенсорс)

    • @zetus6816
      @zetus6816 4 года назад

      Я юзаю обфускатор

    • @JohnSmith-tk2wp
      @JohnSmith-tk2wp 4 года назад

      @@EmeraldPowder Сишные либы декомпилируются в IDA, названия переменных восстанавливаются логическим путем и заглядывая в память когда там есть нужные данные, это всё тотже чит енжин, находишь адрес и смотришь реверс кода что там за функции или методы

  • @nooftube2541
    @nooftube2541 3 года назад

    С il2cpp надо осторожнее быть, что то может и не скомпилиться (например какой нибудь хитрый генерик рефлекшн)

  • @edrftgyjhukiwsdferthyedtrf2714

    А что делать если декомпилируют через гидру или redare2? Тут уже только молиться

    • @EmeraldPowder
      @EmeraldPowder  Год назад

      Конечно всегда можно декомпилировать. Но C++ код сам по себе когда ревёрсишь выглядит так, что иногда hello world сложно разобрать, а если это Unity Player, который дёргает код сгенереный из C# кода через IL2CPP, то я думаю там совсем жесть будет

  • @FLDSNeutrality
    @FLDSNeutrality 3 года назад

    Три читера поставили диз на видео)

  • @kokses3678
    @kokses3678 3 года назад

    у меня devx куплен)

  • @СинельниковНикита-ъ8я

    А возможно ли изменит скрипты игры, улучшив её, к примеру я пытаюсь починить игру Rake, и хочу немного изменить скрипты, изменив некоторые параметры, но не понимаю как это сделать пока что

  • @dea-th661
    @dea-th661 4 года назад

    Как зачем (Dev Magic)? Бизнес для школоты. Берешь проект, добавляешь своей рекламы, добавить читы НА взлом бабла в Гангста ГТА эпик варс)) и распространять свой APK, либо на заказ декомпилировать (да, да незаконно, но это просто пример)

    • @EmeraldPowder
      @EmeraldPowder  4 года назад

      Да, в теории рабочая схема. Никогда кстати об этом не задумывался, обычно тру взломщики, делая патч на деньги и рекламу уберут из игры, перед тем как на 4pda выкладывать

    • @OlegSimonenko
      @OlegSimonenko 2 года назад

      єто очень просто вьіявляется и банится, ведь вставляя свою рекламу тьі даешь возможность по єтой рекламе тебя найти, а все рекламньіе сервисьі забанят тебя по первойже жалобе на всегда..

  • @Юрий-л3у2и
    @Юрий-л3у2и 3 года назад

    Интересно🤔💭

  • @GameWorldMrKIller
    @GameWorldMrKIller 4 года назад

    Ну типо, большая часть читов (возьмём крупную игру такую, возможно с мутиплеером) работают посредством внедрения dll, можно на c# или на c++ написать алгоритм проверки подключёных dll, на c# видел такую функцию даже, и типо если постороняя dll подключена, то сразу нахер убирать, можно так ?

    • @EmeraldPowder
      @EmeraldPowder  4 года назад +4

      Какой алгоритм не пиши, найдётся человек который вырежет его и пропатчит файл игры, так что это имеет смысл только для онлайн проектов, которые хотят защититься хотя бы от половины читов, авторы которых с этим не справятся

    • @juliap.5375
      @juliap.5375 4 года назад +1

      Не напишешь ты ничего такого. Внедрение может происходит посредством прокси-библиотеки. Нужно ещё и все стандартные проверять. Внедрение может происходит и посредством слайсинга, тогда тебе нужно проверять все заголовки всех функций, а на самом деле все функции :) уже смешно, ты игру пишешь, или антивирус. А ещё внедрение может происходить по методу руткита, когда функции (какие угодно, от списка либ до чтения памяти) уже перехвачены и твоей игре будут подсовывать правильные данные, игра вообще не узнает никогда в каком окружении она работает и как, даже контрольную сумму самой себя не посчитает (можно конечно попробовать делать замеры скорости чтения, типа если контрольный участок читается дольше, то косяк, но это такое себе, больше относится к антиотладочным приемам и таки тоже обходится).
      В общем, подобный подход может уберечь разве что от ламеров и каких-то стандартных программ-читов. Любой более-менее программист обойдёт всё это на раз-два.

    • @_Otets_
      @_Otets_ 2 года назад

      @soulshardRU Теоритически нельзя, на практике такой херней никто не заморачивается.

  • @negrime
    @negrime 5 лет назад

    Полезная информация, спасибо !

  • @alekseigolub4336
    @alekseigolub4336 4 года назад

    Канал - бомба!

  • @boristyulkin8951
    @boristyulkin8951 5 лет назад

    ты офигенен, спасибо за видео

  • @АлеАле-ч2й
    @АлеАле-ч2й 4 года назад

    Вау!

  • @SHILY-PROJECT
    @SHILY-PROJECT 4 года назад

    Очень круто и полезно!
    А если я делаю winForm или WPF, можно так же дельки в машинный код бахнуть и как это сделать?)) Заранее спасибо:3

    • @EmeraldPowder
      @EmeraldPowder  4 года назад +1

      Спасибо!
      С помощью il2cpp - вряд ли, его специально разрабатывали в Unity. Но что-то похожее возможно существует, хотя я искал когда-то давно и не нашёл

    • @sharpes4253
      @sharpes4253 3 года назад

      ​@@EmeraldPowder IL2CPU есть.

  • @syoritohatsuki
    @syoritohatsuki 3 года назад +1

    Из этого кода я понял одну вещь, C# говно)

    • @Creativeeart
      @Creativeeart 3 года назад +4

      если ты не очень умный, то это твоя проблема чел

    • @syoritohatsuki
      @syoritohatsuki 3 года назад +1

      @@Creativeeart Я умный, я уважаю других😏

  • @АндрейЕвгеньевич-с4у

    Защищай не защищай кому нужно взломают. Те кто над защитой заморочился в 98% использует чужие скрипты. Сейчас современный век существует юредичиская защита лицензии которая на много эфективнее.

  • @c4llv07e
    @c4llv07e 4 года назад

    IL2CPP - Это же компилятор под линукс в Unity

    • @EmeraldPowder
      @EmeraldPowder  4 года назад

      Он работает подо все платформы, не только под линукс. Формально это наверное транслятор из того во что компилируется C# в C++, чтобы потом компилятором скомпилировать в машинный код целевой платформы.. в общем замудрили они там. Но на удивление это всё работает

  • @nestyyy.4517
    @nestyyy.4517 5 лет назад +1

    *Крутой канал! А можешь запустить тутор Как создать Аналог Агарио? Ответь пожалуйста а так круто!*

    • @EmeraldPowder
      @EmeraldPowder  5 лет назад

      Спасибо! Про Агарио - идея хорошая, хоть я и сам не сильно шарю в онлайне, но как раз думал разобраться в вопросе и про что-нибудь подобное видео сделать

    • @nestyyy.4517
      @nestyyy.4517 5 лет назад

      @@EmeraldPowder *Спасибо большое! Можно и не онлайн если не разбираешся, думаю и так захайпит*

    • @rayan4ik250
      @rayan4ik250 5 лет назад

      @@EmeraldPowderчекни photon network

  • @sashakuzin4458
    @sashakuzin4458 Год назад

    Не винда, а windows