1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Идея Проверка модов при заходе на сервер

Тема в разделе "Запросы на разработку плагинов", создана пользователем Arqsuper, 15 июн 2013.

  1. Shevchik

    Shevchik Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    ТЫ не понимаешь, фордж не посылает информацию о том что мод у игрока есть если этот мод не требует серверной части.
    Потому что с CJB что без него список модов пошлётся одинаковый.
     
    Bars и nVidia.1994 нравится это.
  2. Bars

    Bars Старожил Девелопер Пользователь

    Баллы:
    173
    Да хоть так, хоть 10% защиты.
    Или переписать Фордж, сорцы открыты.
    А, ну да. Заменят чистым...
     
    Сникерсни нравится это.
  3. Pyani

    Pyani Активный участник Пользователь

    Баллы:
    88
    Реализуется очень даже несложно, но все же так же несложно обходится знающими людьми фиксацией отправляемой строки.
     
  4. Автор темы
    Arqsuper

    Arqsuper Старожил Пользователь

    Баллы:
    123
    Skype:
    arqski
    Имя в Minecraft:
    Arqsuper
    Знающих людей не так уж и много, особенно если учесть, что я хочу такую штуку на маленьком и малоизвестном сервере.
    Я, кстати, подумал еще вот о чем. Что если сделать такой мод. Один на сервере, а второй на клиенте. Тот что на сервере считает моды и записывает их в некий код. Тот что на клиенте считает моды в клиенте при заходе в игру и сохраняет тот же некий код. Если моды одинаковые, то и код одинаковый. Если читерюга добавит чит и попытается зайти, то код будет другой, отличный от серверного и этого самого читера не пустит. Если все ок, то игрок спокойно заходит. В принципе это одно и то же.

    Код, как я понял, можно будет уловить и обойти эту защиту. Так же? Но если в добавок к этому юзать лаунчер с авторизацией+одноразовой сессией, то может получится совсем даже неплохо. На средняк потянет
     
  5. Pyani

    Pyani Активный участник Пользователь

    Баллы:
    88
    Я пробовал реализовывать различные типы защит у себя, все можно сделать гораздо проще - сделать логирование прямо в ядре, если речь идет о MCPC серверах. Такой тип защиты я взял с примера того же энсемпликса, где они ее называют Tenji, но к сожалению она у них не очень удачно работает. Насчет возможности обхода - сейчас большинство серверов начало прибегать к тем уровням защиты, которые привлекают ребят с MMORU, тут уже каждый малоизвестный сервер легко раскрывается. По мне самая лучшая защита - это хороший лаунчер, желательно с фоновой резидентной защитой
    Ах да, забыл об одной вещи. Современные читы уже часто не вписывают себя в модлист Forge, соответственно актуальность такой защиты падает вноль. Самое актуальное сейчас может быть - именно фоновое сканирование списка файлов с фс клиента + сверка их с серверными актуальными копиями.​
    Это конечно не панацея для мелких серверов, так коих таково большинство, но для средних и крупных это очень даже реализуемо.
     
    Vedroyder нравится это.
  6. Bars

    Bars Старожил Девелопер Пользователь

    Баллы:
    173
    Можно переписать Forge (чтобы даже чисто клиентские моды отправлял серверу) и написать свой ничего не делающий "мод", который будет также отправлять серверу инфу о себе. Но зато если заменят читеры наш Forge чистым, не отправляющим клиентские моды, то и инфа о нашем моде не отправится серверу. И он не пустит игрока.

    А вообще, лучше не запрещать доступ читеру на сервер, чтобы он думал, что защиты нет, а сами будем логировать попытки читерства и банить.
     
    The Midnight Wizard нравится это.
  7. Shevchik

    Shevchik Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    А можно поставить и настоить NCP, и я выбрал этот путь.
     
    ВремяПриключений и Serrrgio нравится это.
  8. Bars

    Bars Старожил Девелопер Пользователь

    Баллы:
    173
    Я так понимаю, им ты не поделишься. Ведь правда?
    Что такое NCP? ._.
     
    The Midnight Wizard нравится это.
  9. EkzZzo

    EkzZzo Активный участник Пользователь

    Баллы:
    78
    No Cheat Plus, вероятно.
     
    Bars и dimahru нравится это.
  10. Bars

    Bars Старожил Девелопер Пользователь

    Баллы:
    173
    Да, это лучше. Но как обстоят дела с хреем?
     
  11. Shevchik

    Shevchik Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Дык встроенный же есть.
    Главное engine-mod 2 включить и иксрейшики сосут жопу
     
  12. Merro

    Merro Старожил Пользователь

    Баллы:
    103
    Не согласен - проще и профитней продвигать клиентскую защиту.

    Например, сделать, чтобы сервер проверял хеш minecraft.jar.
    А с такими плагинами, как NCP и встроенным анти-хреем MCPC+ это просто идеально.
    Единственный минус NCP в том, что на индустриальном сервере fly будет блокироваться и на джетпаке.
     
  13. Shevchik

    Shevchik Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Вот только клиентская защита вскрывается на раз-два
    А насчёт флая на джетпаках - https://github.com/Shevchik/NCPModCompact
     
    ВремяПриключений и Merro нравится это.
  14. Merro

    Merro Старожил Пользователь

    Баллы:
    103
    Ну по крайней мере спасёт от личностей, которые насмотрелись гайдов на youtube.
     
  15. ptnk

    ptnk Старожил Пользователь

    Баллы:
    173
    А много ли ты сам вскрыл чужих защит, словно консервным ножом баночку с килькой, так же легко и непринужденно?
     
  16. Shevchik

    Shevchik Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Достаточно много.
    Я могу разделить их на 2 типа и выделить одно исключение.
    1 тип: просто лаунчер с тупой обфускацией путём переименования классов, ужно тупо подменить путь до загружамого джара, либо инвертировать проверку md5.
    2 тип: хз что за обфускатор, но его характерная черта - наличие I.gif, вскрывается опять же подменой пути в Game.class, хотя там строки прошиврованы и приходится работать байткод эдитором
    Исключение:
    хил у которого в коде после компиляции наделано некритичных ошибок для джава машины, но декомпиляция во что-либо читаемое затруднена, приходится вчитываться в байткод.
    Ну и у совсем копеек лаунчер на сях.
     
  17. caNek

    caNek Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    AddyCool
    Это фактически мд5 хеширование.
     
  18. BeYkeR

    BeYkeR Старожил Девелопер Пользователь

    Баллы:
    173
    мб надо просто изменить протокол клиента(который изменяется в каждой версии) и протокол сервера.
     
  19. Bars

    Bars Старожил Девелопер Пользователь

    Баллы:
    173
    Ellian Detector, не? Но дам подсказку: он отправляет инфу о себе серверу. Всё равно передача модов нужна...

    А почему бы не делать сравнение даты загрузки с датой последнего изменения minecraft.jar и принудительно его перекачивать, если он был изменён? А вообще, в лаунчере нужно с DLL шаманить, чтобы сделать более-менее достойную защиту.
     
    Сникерсни нравится это.
  20. Shevchik

    Shevchik Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    _Shevchik_
    Ты сначала посмотри что в EllianDetector'e тебе покажет с engine-mod 2, а потом говори.
     

Поделиться этой страницей