Разберем кто и как сломал мой сервер по майнкрафту..
Предыстория
Какое-то время назад мне задали вопрос:

И недавно произошел случай, который идеально это объяснит.
В моем чате Coffee Room появилась идея о создании своего майнкрафт сервака. Ну а что? Предлагаете только учиться в свободное время? Пффф… Под пиво - пойдет.
Так вот. Его я поднял на своем домашнем сервере. Сборку делал не я, а один опытный человек. На мой вопрос про авторизацию ответ был таков: “А зачем? С авторизацией ещё заебнее, проще ники в whitelist добавить. Но вообще это всё излишне. Если чо просто забаним.” Я поржал и забил. Сервак только для майна. В нем ничего полезного нет. У юзера нет никаких прав. А во внутрянке можно достучаться только с одного устройства. Сойдет.
Взлом жопы
И вот настал день X, судный день, взлом жопы. Мне пожаловались, что на сервак не заходит. Я быстренько глянул, перезагрузил и забил. Если уж перезагрузка не поможет, то мои полномочия - ВСЕ. Через недельку я решил все-таки разобраться с этой проблемой. Оказалось, что серв крашнули намеренно. Как я это понял?

Уже любопытно. Это дискорд сервер долбанафта “хакера” discord.qq/mlp1. Там человеку выражают признательность на тайском:

А вот еще:

Немного погуляв по дискордику, я нашел ник Ogmur, и, чутка погуглив, обнаружил это:
Время приключений расследований
После того как я перестал ржать (а это у меня заняло примерно минут 20), я решил выяснить - а что же использовалось для взлома? Интересно же…
Постой, а как же логи?

Изучение логов
Сейчас самое время про них рассказать. Сервер, как и любой демон, ведет логи. Их можно посмотреть с помощью команды journalctl. Чтобы не сойти с ума, лучше использовать удобный флаг --since. Выглядит это все вот таким образом:

Теперь с этой пеленой текста нужно что-то делать. У меня было несколько зацепок:
- Записи о заходах на сервер с
ipадресами; - Отчеты о краше сервера;
- Ник
Ogmur;
“Кем нужно быть, чтобы оставить свой ник на месте взлома?” - спросите вы. Хороший вопрос. Конченным придурком. И мне повезло, что он именно такой)

Вот пруфы:

Тут сразу я нашел время и дату инцидента. Копаю дальше. Оказывается, что я заходил на сервер, выгнав его с моего аккаунта. Но логи сервера на тот момент я не смотрел. Промотав чуть ниже, я нашел его ip:

Глянул, что это вообще за адрес такой.

Далее я решил поискать в папке сервера через grep -r строку Ogmur. И я нашел 2 попадания:
usercache.json;ops.json;
Наиболее интересен для меня ops.json, ибо я не имею понятия на счет uuid пользователей в майне. Хотя стоит покопать в этом направлении. Вдруг можно сопоставить uuid с лицензионной версией майнкрафта. Так вот, в файле я нашел следующее:

Как видно из конфига - он выдал права админа на сервере трем аккаунтам. А все это из-за отсутствия аутентификации. Имея права админа на сервере, он наспавнил различных блоков, чтобы перегрузить карту. И сервер лег, без возможности это корректно переварить. К моему сожалению ничего интересного в атаке не было(
Выявления проблемы
Основной проблемой послужило то, что не было никакой аутентификации на сервере. Из-за этого можно было войти в любой аккаунт. Так же на сервере не была придусмотрена авторизация для выполнения админских команд. Из-за чего произошла эскалация аккаунта до админа.
Так как сервер публичный, то на него мог зайти любой. Как был найден мой ip? Вероятно для этого использовался скан дефолтного порта для майнкрафт серверов, получение фингерпринтов, по которым определялось, что это именно майнкрафт сервер.
На его гите я нашел вот эту тулу: https://github.com/Ogmur/ServerSeeker. Вероятно с помощью нее можно найти рандомный сервак в сети.
Что было дальше?
Сама ситуация очень забавная, так как я обезопасил другие устройства от атаки с сервера. А та серьезность, с которой чел рассказывает про взлом - меня лишь рассмешила.

А тем, кто хостит что-то свое - не забывайте, что любой может попасть под удар. Поэтому не стоит игнорировать базовые методы безопасности) ip все еще живой… А у него много открытых портов… Но это уже совсем другая история.