Очень интересно, спасибо. Теперь буду знать, как хотя бы минимально защитить игру.
@ПиксельАрт-ъ6м5 жыл бұрын
Го гайд по серверам, бекенду и защите всей програмы амбарным замком
5 жыл бұрын
8:15 IL2CPP Можно реверснуть в файлы dll, тогда узнать методы хранимые игрой, их названия и offset'ы в памяти. А далее изменением hex кода можно изменить почти всё. Или можно написать код в файле MainActivity если не ошибаюсь, и применяя доп. библиотеки изменять во время игры данные, можно сделать и дополнительное меню для включения и выключения функций.
@EmeraldPowder5 жыл бұрын
Зареверсить можно всё, это правда. Но с il2cpp - гораздо сложнее, без него обычные .NET сборки вообще даже названия многих переменных и методов содержат как в исходном коде. Да, и плюс в Android приложение всегда можно какой-нибудь свой код добавить сбоку, так что тут далеко не 100% защита, всегда если кто-то сильно захочет то разберет игру на части
4 жыл бұрын
@@EmeraldPowder в этом ты прав
@yuriynevazhno25424 жыл бұрын
Если умеешь читать машинный код - для тебя все опенсорс)
@zetus68164 жыл бұрын
Я юзаю обфускатор
@JohnSmith-tk2wp4 жыл бұрын
@@EmeraldPowder Сишные либы декомпилируются в IDA, названия переменных восстанавливаются логическим путем и заглядывая в память когда там есть нужные данные, это всё тотже чит енжин, находишь адрес и смотришь реверс кода что там за функции или методы
@n1k1zoomi4 жыл бұрын
Спасибо за такие две части! Интересно взломать будет старую игру про Балди (есть в стиме новая версия) и защитить хоть не полностью, но будет защита
@virtualriot40625 жыл бұрын
Материал отличный и очень полезный
@negrime5 жыл бұрын
Полезная информация, спасибо !
@developmentstudio99175 жыл бұрын
Помню как писал модификацию для игры.
@Юрий-л3у2и4 жыл бұрын
Интересно🤔💭
@boristyulkin89515 жыл бұрын
ты офигенен, спасибо за видео
@alekseigolub43364 жыл бұрын
Канал - бомба!
@spasatilex-12805 жыл бұрын
Сделай видео как сделать чтобы игра поддерживала моды
@ТестТест-в3ъ4 жыл бұрын
Это не сложна кстати
@ТестТест-в3ъ4 жыл бұрын
Я на паскале такой хернёй страдал раньше 😁
@c4llv07e4 жыл бұрын
@@ТестТест-в3ъ Так это паскаль, а тут бинарники из C#. Разница есть
@ТестТест-в3ъ4 жыл бұрын
@@c4llv07e в c# тоже можно написать mod lang и будет даже легче
@ТестТест-в3ъ4 жыл бұрын
@@c4llv07e да я не профи в c# но точно знаю как написать modlang
@CrafterMinecrafter3 жыл бұрын
ля, прикольный чел, правда делает мелкие ошибки когда что-то говорит, но это такое
@fliks76624 жыл бұрын
Спасибо конечно за урок, но с моим то кодом не кто не захочет что-то менять))
@_Otets_2 жыл бұрын
Лучшая защита от взлома когда - говнокод!
@Бот-ф7п2 жыл бұрын
@@_Otets_ Забавно, но по сути это единственная мера.
@nooftube25414 жыл бұрын
С il2cpp надо осторожнее быть, что то может и не скомпилиться (например какой нибудь хитрый генерик рефлекшн)
@CrafterMinecrafter3 жыл бұрын
и да, под винду на игру с системой билда il2cpp очень легко написать чит/мод
@SHILY-PROJECT5 жыл бұрын
Очень круто и полезно! А если я делаю winForm или WPF, можно так же дельки в машинный код бахнуть и как это сделать?)) Заранее спасибо:3
@EmeraldPowder5 жыл бұрын
Спасибо! С помощью il2cpp - вряд ли, его специально разрабатывали в Unity. Но что-то похожее возможно существует, хотя я искал когда-то давно и не нашёл
@sharpes42533 жыл бұрын
@@EmeraldPowder IL2CPU есть.
@edrftgyjhukiwsdferthyedtrf27142 жыл бұрын
А что делать если декомпилируют через гидру или redare2? Тут уже только молиться
@EmeraldPowder2 жыл бұрын
Конечно всегда можно декомпилировать. Но C++ код сам по себе когда ревёрсишь выглядит так, что иногда hello world сложно разобрать, а если это Unity Player, который дёргает код сгенереный из C# кода через IL2CPP, то я думаю там совсем жесть будет
@АлеАле-ч2й4 жыл бұрын
Вау!
@СинельниковНикита-ъ8я4 жыл бұрын
А возможно ли изменит скрипты игры, улучшив её, к примеру я пытаюсь починить игру Rake, и хочу немного изменить скрипты, изменив некоторые параметры, но не понимаю как это сделать пока что
@BigPapochka124 жыл бұрын
да dnSpy программа
@GameWorldMrKIller4 жыл бұрын
Ну типо, большая часть читов (возьмём крупную игру такую, возможно с мутиплеером) работают посредством внедрения dll, можно на c# или на c++ написать алгоритм проверки подключёных dll, на c# видел такую функцию даже, и типо если постороняя dll подключена, то сразу нахер убирать, можно так ?
@EmeraldPowder4 жыл бұрын
Какой алгоритм не пиши, найдётся человек который вырежет его и пропатчит файл игры, так что это имеет смысл только для онлайн проектов, которые хотят защититься хотя бы от половины читов, авторы которых с этим не справятся
@juliap.53754 жыл бұрын
Не напишешь ты ничего такого. Внедрение может происходит посредством прокси-библиотеки. Нужно ещё и все стандартные проверять. Внедрение может происходит и посредством слайсинга, тогда тебе нужно проверять все заголовки всех функций, а на самом деле все функции :) уже смешно, ты игру пишешь, или антивирус. А ещё внедрение может происходить по методу руткита, когда функции (какие угодно, от списка либ до чтения памяти) уже перехвачены и твоей игре будут подсовывать правильные данные, игра вообще не узнает никогда в каком окружении она работает и как, даже контрольную сумму самой себя не посчитает (можно конечно попробовать делать замеры скорости чтения, типа если контрольный участок читается дольше, то косяк, но это такое себе, больше относится к антиотладочным приемам и таки тоже обходится). В общем, подобный подход может уберечь разве что от ламеров и каких-то стандартных программ-читов. Любой более-менее программист обойдёт всё это на раз-два.
@_Otets_2 жыл бұрын
@soulshardRU Теоритически нельзя, на практике такой херней никто не заморачивается.
@JohnSmith-tk2wp4 жыл бұрын
лол, от перезаписи памяти чит енжином компиляция в машинный код не спасет также как не спасет от IDA там есть и декомпилятор в псевдокод из машинных кодов. А модельки наверняка можно будет ниндзя риппером стащить когда они загружены :) То что ты говоришь в видосе это слишком наивно, нужно строить защиту которая будет детектить доступ к памяти и для взлома к которой понадобится очень дорогой хакер
@EmeraldPowder4 жыл бұрын
Ничего на стороне клиента на 100% не спасёт. Но вот когда я в IDA открываю игру - тут же пугаюсь и закрываю. А в dnSpy - могу разобраться, и даже поменять что-то. Так что уровень защиты il2cpp немного повысит С модельками и текстурами да, их придётся в расшифрованном виде слать на видеокарту, так что тут особо ничего не придумаешь
@kokses36783 жыл бұрын
у меня devx куплен)
@FLDSNeutrality3 жыл бұрын
Три читера поставили диз на видео)
@dea-th6615 жыл бұрын
Как зачем (Dev Magic)? Бизнес для школоты. Берешь проект, добавляешь своей рекламы, добавить читы НА взлом бабла в Гангста ГТА эпик варс)) и распространять свой APK, либо на заказ декомпилировать (да, да незаконно, но это просто пример)
@EmeraldPowder4 жыл бұрын
Да, в теории рабочая схема. Никогда кстати об этом не задумывался, обычно тру взломщики, делая патч на деньги и рекламу уберут из игры, перед тем как на 4pda выкладывать
@OlegSimonenko3 жыл бұрын
єто очень просто вьіявляется и банится, ведь вставляя свою рекламу тьі даешь возможность по єтой рекламе тебя найти, а все рекламньіе сервисьі забанят тебя по первойже жалобе на всегда..
@nestyyy.45175 жыл бұрын
*Крутой канал! А можешь запустить тутор Как создать Аналог Агарио? Ответь пожалуйста а так круто!*
@EmeraldPowder5 жыл бұрын
Спасибо! Про Агарио - идея хорошая, хоть я и сам не сильно шарю в онлайне, но как раз думал разобраться в вопросе и про что-нибудь подобное видео сделать
@nestyyy.45175 жыл бұрын
@@EmeraldPowder *Спасибо большое! Можно и не онлайн если не разбираешся, думаю и так захайпит*
@rayan4ik2505 жыл бұрын
@@EmeraldPowderчекни photon network
@c4llv07e4 жыл бұрын
IL2CPP - Это же компилятор под линукс в Unity
@EmeraldPowder4 жыл бұрын
Он работает подо все платформы, не только под линукс. Формально это наверное транслятор из того во что компилируется C# в C++, чтобы потом компилятором скомпилировать в машинный код целевой платформы.. в общем замудрили они там. Но на удивление это всё работает
@syoritohatsuki4 жыл бұрын
Из этого кода я понял одну вещь, C# говно)
@Creativeeart3 жыл бұрын
если ты не очень умный, то это твоя проблема чел
@syoritohatsuki3 жыл бұрын
@@Creativeeart Я умный, я уважаю других😏
@АндрейЕвгеньевич-с4у2 жыл бұрын
Защищай не защищай кому нужно взломают. Те кто над защитой заморочился в 98% использует чужие скрипты. Сейчас современный век существует юредичиская защита лицензии которая на много эфективнее.