Гайд Под капотом Tlauncher: Анализ безопасности и кода

Разработчик
Статус
Оффлайн
Регистрация
1 Сен 2018
Сообщения
1,585
Реакции[?]
821
Поинты[?]
63K
Вступление
Всем привет!
Сегодня мы будем говорить о беглом анализе безопасности в коде Tlauncher - популярном лаунчере для игры в Minecraft. Мы проанализируем декомпилированный код и проверим, насколько безопасен этот продукт для пользователей. Начнем с изучения главного бинарного файла, а закончим изучением мода который он поставляет.

Я подметил одну традицию у Colby57 и Arting такую как показывать инструменты которые они использовали, поэтому предлагаю ввести её и к нам!
Использованные инструменты:
Лаунчер
После установки продукта ( Если не изменить стандартный путь ) лаунчер устанавливается в %appdata%/.minecraft/
Главный файл имеет название Tlauncher, и имеет расширение exe. Посмотрев на секции можно заключить, что он не накрыт коммерческим протектором. Стоит загрузить его в DiE для более точного диагностирования:
1682520138638.png
Отлично! Это Java, можно смело переименовывать файл в .jar, и открывать в декомпиляторе.

Телеметрия
Телеметрия это дело добровольное, и в Tlauncher вы можете её выключить:
1682520212115.png

Уникальный пользователь
При первом запуске лаунчера о вас собирается:
  • Операционная система
  • Версия Java
  • Разрешение экрана
  • Версия Tlauncher
  • UUID
  • Информация о видео-карте
  • Информация о процессоре
  • Количество ОЗУ
Это всё отправляется на
Пожалуйста, авторизуйтесь для просмотра ссылки.
/unique/month как POST запрос

Установка новой версии Minecraft / Сборки
При установке новой сборки, версии отправляется телеметрия с вашей текущей выбранной версией игры, она также отправляется при обновлении лаунчера.
Отправляется на
Пожалуйста, авторизуйтесь для просмотра ссылки.
install/version как POST запрос, пример:1682520265927.png

Проверка подключения с сервером
Для проверки подключения с сервером отправляется запрос на
Пожалуйста, авторизуйтесь для просмотра ссылки.
/ без данных в пост, также для проверки подключения отправляется запрос на
Пожалуйста, авторизуйтесь для просмотра ссылки.


Модификация списка серверов
За модификацию списка серверов отвечает класс InnerMinecraftServersImpl, он модифицирует файл servers.dat добавляя, или удаляя оттуда сервера.
Официальным поводом для удаления серверов является не конкуренция, а система
Пожалуйста, авторизуйтесь для просмотра ссылки.


Сервера с которых качается список серверов для добавления или удаления:
Остальное
Ассеты майнкрафта качаются отсюда:
Библиотеки:
API для модпаков:
TLSkin Cape
Как бы не хотелось, но тут тоже ничего нету. Простой Request/Response, и установка ресурсов.
Вот пример:

Итог
Беглого анализа вполне хватило, чтобы понять что TLauncher не занимается никакой чёрной деятельностью, и не собирает никакие данные без разрешения пользователя. А разоблачения которые выпускают на этот лаунчер это проделки конкурентов либо слепой разбор. Всем спасибо за прочтение, и удачи!

Мой блог:
Пожалуйста, авторизуйтесь для просмотра ссылки.

Бинарники:
Пожалуйста, авторизуйтесь для просмотра ссылки.

Бонус:
В блоге выложил пропатченный лаунчер, который даёт бесконечный премиум, чтобы отключить всё описанное в этой теме.
 
Забаненный
Статус
Оффлайн
Регистрация
2 Фев 2021
Сообщения
453
Реакции[?]
81
Поинты[?]
3K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
за разбор и пропатченную джарку лайк, но по сути разбор малость бесполезный, все на тарелке и так лежит, потому что нету обфускации.
 
Разработчик
Статус
Оффлайн
Регистрация
1 Сен 2018
Сообщения
1,585
Реакции[?]
821
Поинты[?]
63K
за разбор и пропатченную джарку лайк, но по сути разбор малость бесполезный, все на тарелке и так лежит, потому что нету обфускации.
Да, я в блоге спрашивал насчёт этого:
1682521060324.png
Да, и сколько существует разоблачений на него, а ресерчей я не нашёл:
И кучу других
 
Забаненный
Статус
Оффлайн
Регистрация
2 Фев 2021
Сообщения
453
Реакции[?]
81
Поинты[?]
3K
Обратите внимание, пользователь заблокирован на форуме. Не рекомендуется проводить сделки.
Да я в блога спрашивал насчёт этого:
Посмотреть вложение 245821
Да, и сколько существует разоблачений на него, а ресерчей я не нашёл:
И кучу других
это пошло, потому что есть легаси лаунчер, который изначально и создавался как tlauncher, но кто-то когда-то спиздил код у девелопера, и тот пустил слух что в новом тл есть вирусы.
 
Нестандартное звание?
Пользователь
Статус
Оффлайн
Регистрация
23 Июл 2021
Сообщения
407
Реакции[?]
81
Поинты[?]
2K
Вступление
Всем привет!
Сегодня мы будем говорить о беглом анализе безопасности в коде Tlauncher - популярном лаунчере для игры в Minecraft. Мы проанализируем декомпилированный код и проверим, насколько безопасен этот продукт для пользователей. Начнем с изучения главного бинарного файла, а закончим изучением мода который он поставляет.

Я подметил одну традицию у Colby57 и Arting такую как показывать инструменты которые они использовали, поэтому предлагаю ввести её и к нам!
Использованные инструменты:
Лаунчер
После установки продукта ( Если не изменить стандартный путь ) лаунчер устанавливается в %appdata%/.minecraft/
Главный файл имеет название Tlauncher, и имеет расширение exe. Посмотрев на секции можно заключить, что он не накрыт коммерческим протектором. Стоит загрузить его в DiE для более точного диагностирования:
Посмотреть вложение 245817
Отлично! Это Java, можно смело переименовывать файл в .jar, и открывать в декомпиляторе.

Телеметрия
Телеметрия это дело добровольное, и в Tlauncher вы можете её выключить:
Посмотреть вложение 245818

Уникальный пользователь
При первом запуске лаунчера о вас собирается:
  • Операционная система
  • Версия Java
  • Разрешение экрана
  • Версия Tlauncher
  • UUID
  • Информация о видео-карте
  • Информация о процессоре
  • Количество ОЗУ
Это всё отправляется на
Пожалуйста, авторизуйтесь для просмотра ссылки.
/unique/month как POST запрос

Установка новой версии Minecraft / Сборки
При установке новой сборки, версии отправляется телеметрия с вашей текущей выбранной версией игры, она также отправляется при обновлении лаунчера.
Отправляется на
Пожалуйста, авторизуйтесь для просмотра ссылки.
install/version как POST запрос, пример:Посмотреть вложение 245819

Проверка подключения с сервером
Для проверки подключения с сервером отправляется запрос на
Пожалуйста, авторизуйтесь для просмотра ссылки.
/ без данных в пост, также для проверки подключения отправляется запрос на
Пожалуйста, авторизуйтесь для просмотра ссылки.


Модификация списка серверов
За модификацию списка серверов отвечает класс InnerMinecraftServersImpl, он модифицирует файл servers.dat добавляя, или удаляя оттуда сервера.
Официальным поводом для удаления серверов является не конкуренция, а система
Пожалуйста, авторизуйтесь для просмотра ссылки.


Сервера с которых качается список серверов для добавления или удаления:
Остальное
Ассеты майнкрафта качаются отсюда:
Библиотеки:
API для модпаков:
TLSkin Cape
Как бы не хотелось, но тут тоже ничего нету. Простой Request/Response, и установка ресурсов.
Вот пример:

Итог
Беглого анализа вполне хватило, чтобы понять что TLauncher не занимается никакой чёрной деятельностью, и не собирает никакие данные без разрешения пользователя. А разоблачения которые выпускают на этот лаунчер это проделки конкурентов либо слепой разбор. Всем спасибо за прочтение, и удачи!

Мой блог:
Пожалуйста, авторизуйтесь для просмотра ссылки.

Бинарники:
Пожалуйста, авторизуйтесь для просмотра ссылки.

Бонус:
В блоге выложил пропатченный лаунчер, который даёт бесконечный премиум, чтобы отключить всё описанное в этой теме.
Следующий гайд, под капотом TLegacy
 
Сверху Снизу