Что такое эксплойт Minecraft и как его исправить

Last modified on 14 марта 2023 in Running a server
  • 10 min read
  • 3830
  • 0
Valeriy Stereo

Valeriy Stereo

CCO, Creative Director

УЯЗВИМОСТЬ БЕЗОПАСНОСТИ В ИЗДАНИИ JAVA

Сообщение Mojang об этой уязвимости: ВАЖНОЕ СООБЩЕНИЕ: УЯЗВИМОСТЬ БЕЗОПАСНОСТИ В JAVA-ВЕРСИИ

9 декабря 2021 года была обнаружена уязвимость в одной из библиотек протоколирования, используемых банками сервера Minecraft. Это уязвимость RCE (Remote Code Execution), поэтому она считается серьезной, и всем рекомендуется обновиться как можно скорее.

Исправление эксплойта для Paper было выпущено командой PaperMC и впоследствии было объединено в различных форках Paper. Другие серверные банки также выпустили сборки с исправлением.

10 декабря 2021 года Mojang выпустила исправление эксплойта для клиентов Minecraft и шаги по исправлению эксплойта на старых версиях серверов Minecraft. Для устранения эксплойта выполните описанные ниже действия.

Клиенты также были уязвимы к этому эксплойту, но Mojang уже выпустила исправление, которое распространяется на все версии Minecraft - Вам просто нужно закрыть все запущенные экземпляры игры и Minecraft launcher и запустить лаунчер снова - Исправленная версия загрузится автоматически.

Не рекомендуется играть на серверах, которые не были обновлены до последней версии Minecraft, так как они могут быть уязвимы для эксплойта. Это критично для модифицированных клиентов, которые не получили исправление, выпущенное Mojang. Поэтому убедитесь, что вы также обновили свой клик и проверили, выпустили ли они патч для эксплойта.

Мы создали этот документ, чтобы помочь вам выполнить шаги по устранению эксплойта. Мы рекомендуем вам применить флаг, если это необходимо, для вашей версии Minecraft и обновить серверный jar до последней доступной сборки, убедиться, что эта сборка включает исправление эксплойта (об этом должно быть сказано в журнале изменений). Шаги по выполнению этих двух действий приведены ниже.

Если вам нужна помощь в выполнении этих действий, пожалуйста, обратитесь к нашему каналу #support-chat на нашем Discord сервере.

Если ваш сервер запущен:

Серверы Forge

Forge опубликовал обширную статью с подробным описанием шагов по устранению эксплойта путем обновления до последней сборки или применения флага. Подробнее вы можете прочитать здесь.

Серверы 1.18 (Vanilla, Spigot, Paper, Purpur и другие форки)

1.18: Обновитесь до версии 1.18.1, если это возможно. Если нет, используйте тот же подход, что и для 1.17.x:

Ссылка на .jar PaperMC 1.18.1 с исправлением эксплойта:

  • Paper 1.18.1 - Выберите последнюю сборку на сайте и загрузите ее: PaperMC 1.18.1 Builds

Серверы 1.17 - 1.17.1

Мы уже применили исправление ко всем серверам под управлением 1.17. Мы по-прежнему рекомендуем вам обновиться до последней сборки 1.17.1 или 1.18.1.

Ссылки на банки PaperMC 1.17.1 с исправлением эксплойта:

  • Paper 1.17.1 - Выберите последнюю сборку на сайте и скачайте ее: PaperMC 1.17.1 Builds

Если вы обновились до одной из вышеперечисленных сборок, вам не нужно применять исправление флага, которое мы приводим ниже.

Если вы все же хотите применить исправление, выполните следующие действия:

Mojang рекомендовала добавить флаг -Dlog4j2.formatMsgNoLookups=true в команду запуска. 9 декабря 2021 года команда Godlike.host добавила этот флаг на все серверы Minecraft, так что вам просто нужно убедиться, что у вас есть этот флаг в команде запуска. Также убедитесь, что вы перезапустили свой сервер, если вы этого не сделали, так как перезапуск сервера применяет флаг при запуске. Чтобы убедиться в наличии флага, просто зайдите на панель Minecraft, затем перейдите на вкладку запуска и убедитесь, что флаг находится в команде запуска, он должен быть перед текстом -jar. Также рекомендуется обновить сборку до последней версии 1.17.1, предоставляемой вашим серверным банком. Paper, Fabric и другие серверные банки выпустили сборки 1.17.1, включающие исправление эксплойта. Дополнительную информацию см. в разделе "Обновление" в конце этого документа.

Серверы 1.12 - 1.16.5

PaperMC выпустила банки с исправлением эксплойта. Этих банок нет на их сайте, вот прямые ссылки на них (Вы также можете найти их в нашем селекторе типов серверов на вкладке настроек):

Официальное заявление от PaperMC: Все старые сборки не поддерживаются. На некоторых серверах могут быть проблемы с консолью или другие проблемы. Скачивайте и используйте на свой страх и риск. Ссылки на старые сборки:

Если вы обновились до одной из вышеперечисленных сборок, вам не нужно применять исправление флага, которое мы приводим ниже.

Если вы все же хотите применить исправление, выполните следующие шаги:

Если по какой-то причине ваш сервер не запускается после применения исправления или вы хотите удалить исправление, нажмите на кнопку Remove.

Если по какой-то причине вам нужно сделать это вручную, выполните следующие действия:

Загрузите этот файл в домашнюю директорию вашего сервера. Для этого перейдите по URL-адресу, и в вашем браузере откроется файл .xml, вам нужно будет щелкнуть правой кнопкой мыши, затем нажать "Сохранить как" и сохранить файл .xml. Вы также можете перейти в диспетчер файлов на панели Minecraft, нажать на кнопку " Загрузить с URL " и вставить следующий URL: https://launcher.mojang.com/v1/objects/02937d122c86ce73319ef9975b58896fc1b491d1/log4j2_112-116.xml, после чего файл будет загружен в домашнюю директорию вашего сервера. После того как файл окажется на сервере, перейдите на вкладку startup на панели Minecraft и добавьте следующие аргументы JVM во флаги запуска. Для этого просто перейдите на вкладку "Запуск" и добавьте следующие аргументы JVM в поле "Флаги запуска": -Dlog4j.configurationFile=log4j2_112-116.xml. После добавления аргументов JVM перезагрузите сервер. Также рекомендуется обновить последнюю сборку, предоставленную банком вашего сервера. Большинство разработчиков выразили намерение не обновлять серверные банки старых версий, чтобы включить исправление эксплойта, но компания Paper уже выпустила новую сборку 1.16.5 (Build #792), которая включает исправление ошибки. За дополнительной информацией обратитесь к разделу об обновлении в конце этого документа.

Серверы 1.7 - 1.11.2

PaperMC выпустила банки с исправлением эксплойта. Этих банок нет на их сайте, но вот прямые ссылки на них (Вы также можете найти их в нашем селекторе типов серверов на вкладке настроек)

Официальное заявление от PaperMC: Все устаревшие сборки не поддерживаются. На некоторых серверах возможны проблемы с консолью или другие проблемы. Скачивайте и используйте на свой страх и риск. Ссылки на старые сборки:

Если вы обновились до одной из вышеперечисленных сборок, вам не нужно применять исправление флага, которое мы приводим ниже.

Если вы все же хотите применить его (по нашим тестам, эти флаги не работают с Paper 1.7 - 1.11.2, и ваш сервер не запустится, если вы их используете), вы можете выполнить следующие шаги:

Загрузите этот файл в домашнюю директорию вашего сервера. Для этого перейдите по URL-адресу, и в вашем браузере откроется файл .xml, вам нужно будет щелкнуть правой кнопкой мыши, затем нажать "Сохранить как" и сохранить файл .xml. Вы также можете перейти в диспетчер файлов на панели Minecraft, нажать на кнопку " Загрузить с URL " и вставить следующий URL: https://launcher.mojang.com/v1/objects/dd2b723346a8dcd48e7f4d245f6bf09e98db9696/log4j2_17-111.xml, после чего файл будет загружен в домашнюю директорию вашего сервера. После того как файл окажется на сервере, перейдите на вкладку startup на панели Minecraft и добавьте следующие аргументы JVM во флаги запуска. Для этого просто перейдите на вкладку "Запуск" и добавьте следующие аргументы JVM в поле "Флаги запуска": -Dlog4j.configurationFile=log4j2_17-111.xml. После добавления аргументов JVM перезапустите сервер.

Серверы версии 1.6 и ниже

Серверы, работающие под управлением версий 1.6 и ниже, не затронуты этим эксплойтом.

Добавление флага в раздел флагов запуска

Пример добавления флага в команду запуска (см. выделенный текст). Помните, что вам нужно добавить соответствующий флаг, соответствующий версии вашего сервера Minecraft.

ВАЖНО

По умолчанию эта опция установлена для всех серверов и может не отображаться в виде xms и xmx.

Обновление банка сервера до последней сборки

:white_check_mark: Spigot - Смотрите здесь!

:white_check_mark: Paper - Скачать здесь - Исправление эксплойта находится в сборке #64 или более новой для MC 1.18 / сборке #398 или более новой для MC 1.17.1. Paper также перенесла исправление в MC 1.16.5 с помощью сборки #792, которую можно найти здесь. Мы рекомендуем использовать Build #399 или более новую для MC 1.17.1 и Build #67 или более новую для MC 1.18-1.18.1. Эти сборки включают обновленную библиотеку Log4J (библиотека, которая использовала эксплойт в старых версиях).

Сборки PaperMC, включающие исправление эксплойта:

:white_check_mark: Purpur - Скачать здесь - Исправление эксплойта находится в сборке #1432 или более новой для MC 1.18.

:white_check_mark: Waterfall - Скачать здесь - Исправление эксплойта находится в сборке #467 или более новой. Мы рекомендуем использовать сборку #468 или более новую, которая включает обновленную библиотеку Log4J (библиотека, которая использовала эксплойт в старых версиях).

:white_check_mark: Velocity - Скачать здесь - Исправление эксплойта находится в сборке #97 или более новой. Мы рекомендуем использовать Build #98 или более новую версию, которая включает обновленную библиотеку Log4J (библиотека, которая использовалась в старых версиях).

:white_check_mark: Forge - Скачать здесь - Forge обновил наиболее популярные версии для применения исправления эксплойта. Следующие версии Forge (или более новые версии) содержат исправление эксплойта:

Forge опубликовал обширную статью с подробным описанием того, как исправить эксплойт либо путем обновления до последней сборки, либо путем применения флага. Подробнее вы можете прочитать здесь.

Вы можете скачать один из вышеуказанных банок (убедитесь, что вы скачали сборку с исправлением), запустить .jar на своей машине, нажать на кнопку создания файлов сервера, затем заархивировать/запаковать все файлы сервера, которые были созданы, и загрузить их на свой сервер.

Вы также можете обновить свой сервер с помощью нашего селектора типа сервера. Просто перейдите на страницу настроек вашего сервера, затем выберите jar, который вы хотите загрузить, и выберите последнюю сборку. Убедитесь, что вы ссылаетесь на сборку #, указанную выше, чтобы знать, что вы загружаете сборку, которая включает исправление. Вы также можете воспользоваться кнопкой Обновить до последней сборки, если ранее использовали наш селектор типа сервера.

Перед обновлением или внесением каких-либо изменений рекомендуется выполнить резервное копирование сервера. Ознакомьтесь с нашим руководством о том, как работает резервное копирование и как его использовать.

Как проверить, уязвим ли ваш сервер

Как сообщает команда PaperMC: Чтобы проверить, работает ли патч, запустите в консоли команду say ${date:YYYY}, она должна вывести ту же команду, а не 2021. Если он выводит 2021, вы не исправили проблему должным образом.

Если вам нужна помощь в обновлении вашего сервера, пожалуйста, обратитесь к нашему руководству по обновлению и #open-ticket.

Оцените статью по 5-бальной шкале

Будь первым, кто оценит эту новость!
Нашли ошибку? Выделите ее и нажмите Ctrl + Enter, чтобы сообщить нам.
Demo
Game
Panel
×

Сообщить об ошибке

Текст ошибки

Ваш вариант