Помогите Взломали сервер через автодонат.

  • Автор темы Автор темы Hypex
  • Дата начала Дата начала

Hypex

Активный участник
Пользователь
Баллы
61
Ник в Minecraft
Hypex
Доброго времени суток! Не так давно у меня произошла неприятная ситуация - взломали сервер чрез автодонат trademc. Вернее его взламывали похожим образом уже два раза. Прошу помочь, если кто-то что-то знает об этом, ну или может у кого есть идеи. Заранее спасибо!

Сначала поясню за сам сервер. Находится он на VDS (debian 9). Включает в себя bungeecord, хаб и два игровых сервера (выживание и креатив). Все сервера кроме bungeecord и хаба localhost. На хабе включён RCON. Версия серверов 1.18.2.
Автодонат работает следующим образом: на bungeecord, хабе и сервере выживания стоит плагин CommandSync. С автодоната команда идёт на хаб, а от туда на сервер выживания (донат пока есть только на сервере выживания).

Первый раз взломщики каким-то образом узнали пароль от RCON, а он состоит из 18 символов. Самое забавное, что эти взломщики мне сообщили, что пароль они узнали благодаря автодонату. Кстати, прям перед взломом была совершена покупка игровой валюты на 1р. на несуществующий аккаунт (взломщики сказали, что это они были).

После данного инцидента я добавли правило в файрвол, запрещающее подключаться к порту RCON, для всех ip, кроме самого автодоната.

Во второй раз произошло уже что-то интереснее. Как и в первый раз через автодонат было совершено несколько покупок на 1р на тот же несуществующий аккаунт. Но в последнем донате в качестве ответа на высланную на сервер команду пришло не как ранее "Syncing command /eco give НикИгрока 100", а "Ответ: Ваш пароль изменён!". Т.е. купив валюты, взломщики поменяли пароль на аккаунте администратора.

Нормальный лог автодоната:
KVOXX1f6lMkdqA

Автодонат2.PNG
Лог при взломе:
M6KE5PKoHygk0g

Автодонат.PNG
Вот что в логах:

Нормальная отработка:
[02:02:01] [RCON Listener #1/INFO]: Rcon connection from: /79.137.70.179
[02:02:01] [Thread-7/INFO]: [0;32;1mSent output - localhost[m

В момент взлома:
[02:10:01] [RCON Listener #1/INFO]: Rcon connection from: /79.137.70.179
[02:10:01] [Server thread/INFO]: [AuthMe] Rcon changed password of НикАдмина

Настройка iptables:
vw4g-YuujFLV_w

iptables.PNG
Результат работы Advanced Port Scanner:
7qoKksw4jl80Qw

APS.PNG
Буду рад любым предложениям, предположениям и вопросам.
 
Последнее редактирование:
ну так хакер создаёт свой магазин именно в trademc и там ставит выполнение команды на смену пароля и потом в тестовом режиме покупает его
тогда бы "хакер" получил лог о покупке в свой магазин, а взломанный ничего бы не видел в биллинге.
если нет массовых взломов, тут вероятнее всего где-то он проeбaл свои данные от биллинга трейдмс.
 
Тоесть трейд МС логгирует все команды, даже если они были выполнены через консоль и отправляет тебе? Ну бред же
Я не говорил о всех командах. В логе происходит конкретное действие запрос->ответ.
Трейдмс отправляет команду на сервер, сервер её обрабатывает и отдает ответ.
В чем тут бред?
 
Я не говорил о всех командах. В логе происходит конкретное действие запрос->ответ.
Трейдмс отправляет команду на сервер, сервер её обрабатывает и отдает ответ.
В чем тут бред?
сколько звезд должно сложиться, чтобы получить такой исход событий как показал ТС?
иначе, запрос с изменением пароля исходила из трейдмс и судя по тому, что это видит ТС.. запрос исходил из его панели, не так ли?
 
сколько звезд должно сложиться, чтобы получить такой исход событий как показал ТС?
иначе, запрос с изменением пароля исходила из трейдмс и судя по тому, что это видит ТС.. запрос исходил из его панели, не так ли?
Смотрите внимательно, там происходит не запрос на изменение пароля, а запрос выполнения команды выдачи "sync console srv eco give ... 100". Сообщение об изменении пароля приходит в ответе(что в консоли, что в панели)
 
Последнее редактирование:
Смотрите внимательно, там происходит не запрос на изменение пароля, а запрос выполнения команды выдачи "sync console srv eco give ... 100". Сообщение об изменении пароля приходит в ответе(что в консоли, что в панели)
и это тоже вызывает много вопросов, потому до этого изложил теорию, а возможно ли исполнить две команды на одну услугу, тогда каким будет лог при покупке товара.
не знаю нюансов трейдмс.
либо спуфят команду при покупке..
 
а этот плагин который command sync не имеет уязвимостей? например в ник для покупки доната написать что-то типа «& sync console srv authme unregister ник админа»?
 
ТС, в аргументах платежа передаётся ID покупки или команда?
Повторюсь, что я очень далёк от веба, но вот что нарыл через wireshark при повторении покупки.
Возможно вот это число 534156 это id товара и его подменили? Т.е. может быть такое в теории, что у них все товары с разных сайтов в одной базе расположены и получаются по id. Т.е. мог ли взломщик создать свой автодонат, создать товар с командой на изменение пароля от аккаунта админа и при покупке на моём автодонате подменить id товара?

UPD: Да, 534156 - это, похоже, именно id товара, попробовал на другом товаре, оно там другое)

UPD2: Проверил это id, на только что созданном товаре (т.е. новом). Оно там 7xxxxx, т.е. товары, по-видимому, в одной базе лежат и не привязаны "крепко" к конкретному магазину.
 

Вложения

  • wireshark.PNG
    wireshark.PNG
    25,7 КБ · Просмотры: 27
Последнее редактирование:
ну и конечно же, самый банальный вопрос, а есть ли у кого-то доступ к TradeMC?
мало ли твой пароль где-нибудь сливался, примерно 1000 ситуаций когда создатели юзают пароль от аккаунта майнкрафта и биллинга автодонатов.
Проверял историю активность в trademc на своём ааке, никто не заходил кроме меня.
 
Хотя конечно это не рисуется никак с логом, где исполняется одна команда, а ответ приходит другой.
не знаю нюансов платформы, но можно ли там исполнять две команды?
В логах сервера вообще нет информации про команду для выдачи валюты. Только для изменения пароля. Т.е. там точно не 2 команды пришло, а только одна.
 
Предположение самое очевидное - в какой-то плагин(возможно даже не в один) вшит бэкдор. И, к сожалению, закрытие портов от этого никак не поможет.
Какой-то слишком интерактивный бэкдор). Сейчас буду пробовать все 5 плагинов из байт-кода в java переводить и искать методы, прослушивающие ивент команды от RCON из Spigot-api. Хотя я на 95% уверен, что это не бэкдор в плагинах.
 
а этот плагин который command sync не имеет уязвимостей? например в ник для покупки доната написать что-то типа «& sync console srv authme unregister ник админа»?
Судя по логам, плагин CommandSync вообще не был задействован во время взлома, т.е. команда от trademc вообще не ушла на srv сервер, а выполнилась сразу на хабе.
 
Повторюсь, что я очень далёк от веба, но вот что нарыл через wireshark при повторении покупки.
Возможно вот это число 534156 это id товара и его подменили? Т.е. может быть такое в теории, что у них все товары с разных сайтов в одной базе расположены и получаются по id. Т.е. мог ли взломщик создать свой автодонат, создать товар с командой на изменение пароля от аккаунта админа и при покупке на моём автодонате подменить id товара?

UPD: Да, 534156 - это, похоже, именно id товара, попробовал на другом товаре, оно там другое)

UPD2: Проверил это id, на только что созданном товаре (т.е. новом). Оно там 7xxxxx, т.е. товары, по-видимому, в одной базе лежат и не привязаны "крепко" к конкретному магазину.
Если товары не привязаны к домену, то да, такое было бы возможно, но по логу видно, что команда приходит та что и должна.
 
Какой-то слишком интерактивный бэкдор). Сейчас буду пробовать все 5 плагинов из байт-кода в java переводить и искать методы, прослушивающие ивент команды от RCON из Spigot-api. Хотя я на 95% уверен, что это не бэкдор в плагинах.
Не особо интересный. Другое дело, когда бэкдор дает полный контроль на сервером(особенно если сервер запущен от рута)
 
но по логу видно, что команда приходит та что и должна.
Может у них сама команда и то, что отразится в логах расположено в разных полях? Ибо логи хранятся в БД, и это поле надо проверять на SQL инъекцию, а вот команду не надо проверять. Есть такая вероятность?
 
Назад
Верх Низ